لماذا النسخ الاحتياطي هو أهم استثمار أمني لشركتك؟
تخيل أن فيروس فدية (Ransomware) شفّر كل ملفات شركتك، أو أن قرصاً صلباً تعطل فجأة. بدون نسخ احتياطي، ستفقد كل شيء. استراتيجية 3-2-1 هي الطريقة المثبتة لحماية بياناتك من أي كارثة.
ما هي استراتيجية النسخ الاحتياطي 3-2-1؟
- 3 نسخ من بياناتك على الأقل
- 2 وسيلة تخزين مختلفة (قرص صلب + سحابي)
- 1 نسخة خارج الموقع (مكان جغرافي مختلف)
تطبيق عملي: إعداد النسخ الاحتياطي خطوة بخطوة
الخطوة 1: تحديد البيانات المهمة
- حرجة: قواعد البيانات، ملفات المحاسبة، عقود العملاء
- مهمة: البريد الإلكتروني، المستندات المشتركة، كود المشاريع
- عادية: الملفات المؤقتة، التحميلات (يمكن إعادة تثبيتها)
الخطوة 2: النسخ الاحتياطي المحلي
#!/bin/bash
# backup.sh - سكربت نسخ احتياطي يومي
DATE=$(date +%Y-%m-%d_%H-%M)
BACKUP_DIR="/backup"
SOURCE_DIRS="/var/www /home /etc"
BACKUP_FILE="$BACKUP_DIR/backup_$DATE.tar.gz"
# إنشاء مجلد النسخ الاحتياطي
mkdir -p $BACKUP_DIR
# ضغط ونسخ الملفات
tar -czf $BACKUP_FILE $SOURCE_DIRS 2>/dev/null
# حذف النسخ الأقدم من 30 يوم
find $BACKUP_DIR -name "*.tar.gz" -mtime +30 -delete
echo "تم النسخ: $BACKUP_FILE"
# جدولة النسخ اليومي التلقائي
crontab -e
# أضف هذا السطر (تشغيل يومياً الساعة 2 صباحاً)
0 2 * * * /path/to/backup.sh >> /var/log/backup.log 2>&1
الخطوة 3: النسخ الاحتياطي لقاعدة البيانات
# نسخ احتياطي لـ MySQL/MariaDB
mysqldump -u root -p --all-databases > /backup/db_$(date +%Y%m%d).sql
# نسخ قاعدة بيانات محددة
mysqldump -u root -p my_database > /backup/my_db.sql
# ضغط النسخة
mysqldump -u root -p my_database | gzip > /backup/db.sql.gz
# استعادة قاعدة البيانات
mysql -u root -p my_database < /backup/db_backup.sql
الخطوة 4: النسخ الاحتياطي السحابي باستخدام rclone
# تثبيت rclone
curl https://rclone.org/install.sh | sudo bash
# إعداد الاتصال بـ Google Drive أو S3
rclone config
# نسخ مجلد إلى السحابة
rclone copy /backup remote:backup-folder
# مزامنة
rclone sync /backup remote:backup-folder
الخطوة 5: نسخ WordPress احتياطياً
# نسخ ملفات WordPress
tar -czf /backup/wp_files.tar.gz /var/www/html/wp-content/
# نسخ قاعدة بيانات WordPress
mysqldump -u wp_user -p wp_database > /backup/wp_db.sql
# أو باستخدام WP-CLI
wp db export /backup/wp_db.sql --path=/var/www/html
اختبار النسخ الاحتياطي (خطوة حاسمة!)
نسخ احتياطي بدون اختبار = لا شيء. يجب اختبار الاستعادة بانتظام:
- شهرياً: اختبر استعادة ملفات عشوائية
- ربع سنوي: اختبر استعادة كاملة على خادم اختباري
- توثيق: وثّق خطوات الاستعادة بالتفصيل
# اختبار الاستعادة
mkdir /tmp/restore-test
tar -xzf /backup/daily_backup.tar.gz -C /tmp/restore-test/
ls -la /tmp/restore-test/
rm -rf /tmp/restore-test
خطة استعادة الكوارث
- RTO (Recovery Time Objective): كم من الوقت تحتاج للعودة للعمل؟
- RPO (Recovery Point Objective): كم من البيانات يمكنك تحمل خسارتها؟
- قائمة الأولويات: ما الأنظمة التي تُستعاد أولاً؟
- جهات الاتصال: من المسؤول عن كل خطوة؟
جدول النسخ الاحتياطي المقترح
- يومياً: قواعد البيانات + الملفات المتغيرة (تزايدي)
- أسبوعياً: نسخة كاملة لكل الملفات
- شهرياً: نسخة كاملة إلى وسيط خارجي منفصل
- قبل أي تحديث: نسخة كاملة فورية
أدوات النسخ الاحتياطي المقترحة
- للخوادم: rsync, rclone, Borgbackup, Restic
- لـ WordPress: UpdraftPlus, BlogVault, All-in-One WP Migration
- سحابية: Google Drive, AWS S3, Backblaze B2
- للكمبيوتر الشخصي: Timeshift (Linux), File History (Windows)
ملخص المهارات المكتسبة
- تطبيق استراتيجية 3-2-1 للنسخ الاحتياطي
- كتابة سكربتات Bash للنسخ التلقائي
- نسخ قواعد بيانات MySQL واستعادتها
- إعداد النسخ السحابي باستخدام rclone
- نسخ WordPress احتياطياً بالكامل
- اختبار الاستعادة وتوثيق خطة الكوارث
الخطوة التالية: نفّذ هذه الاستراتيجية اليوم. ابدأ بسكربت بسيط وطوّره تدريجياً.