
واحدة من أهم الخطوات التي تضمن استمرار موقعك وتفادي الكوارث الرقمية هي إعداد نظام نسخ احتياطي آلي. سواء تعرض موقعك لهجوم، أو قمت بخطأ تقني، فإن وجود نسخة احتياطية يضمن إمكانية استعادة كل شيء بسرعة. في هذه المقالة، سنشرح كيف تقوم بإنشاء نسخة احتياطية من ملفات الموقع وقواعد البيانات، وتجدول العملية تلقائيًا باستخدام cron.
أنواع النسخ الاحتياطي المطلوبة
- نسخ ملفات الموقع: تشمل ملفات WordPress أو Drupal أو Joomla والمرفقات والقوالب.
- نسخ قواعد البيانات: MySQL أو MariaDB، حيث تُخزّن المقالات، المستخدمين، الإعدادات.
الموقع النموذجي للمجلدات
- ملفات الموقع:
/var/www/html
- ملف النسخ:
/backups
(سنقوم بإنشائه)
الخطوة الأولى: إنشاء مجلد للنسخ الاحتياطية
sudo mkdir -p /backups sudo chown $USER:$USER /backups
الخطوة الثانية: إنشاء سكربت النسخ الاحتياطي
أنشئ ملفًا جديدًا للسكريبت:
nano /backups/backup.sh
ثم الصق المحتوى التالي:
#!/bin/bash DATE=$(date +%F-%H-%M) BACKUP_DIR="/backups/$DATE" WEB_DIR="/var/www/html" DB_NAME="اسم_قاعدة_البيانات" DB_USER="اسم_المستخدم" DB_PASS="كلمة_المرور" mkdir -p $BACKUP_DIR # نسخ ملفات الموقع tar -czf $BACKUP_DIR/site-files.tar.gz $WEB_DIR # نسخ قاعدة البيانات mysqldump -u $DB_USER -p$DB_PASS $DB_NAME > $BACKUP_DIR/db.sql # ضغط قاعدة البيانات gzip $BACKUP_DIR/db.sql # حذف النسخ الأقدم من 7 أيام find /backups/* -mtime +7 -exec rm -rf {} \;
لا تنس استبدال: اسم_قاعدة_البيانات
واسم_المستخدم
وكلمة_المرور
بالقيم الصحيحة.
ثم احفظ الملف واضغط Ctrl + X
ثم Y
ثم Enter
.
جعل السكربت قابلًا للتنفيذ:
chmod +x /backups/backup.sh
الخطوة الثالثة: جدولة النسخ التلقائي باستخدام cron
افتح جدول المهام:
crontab -e
ثم أضف السطر التالي لتشغيل النسخ يوميًا الساعة 2 فجرًا:
0 2 * * * /backups/backup.sh
الخطوة الرابعة (اختياري): إرسال النسخ الاحتياطية إلى مكان خارجي
من الأفضل إرسال النسخ إلى خدمة خارجية مثل:
- Google Drive: باستخدام أداة
rclone
- Amazon S3: باستخدام
aws-cli
- خادم آخر: باستخدام
scp
أوrsync
مثال باستخدام scp لنقل النسخة لخادم آخر:
scp -r /backups/$DATE username@remote-server:/remote-backup/
الخطوة الخامسة: اختبار النسخة الاحتياطية
لا يكفي إنشاء النسخة فقط، بل يجب اختبارها:
- افتح ملف db.sql.gz وتأكد من محتواه
- جرب استخراج site-files.tar.gz في مجلد آخر
نصائح إضافية
- لا تخزّن النسخ الاحتياطية داخل مجلد الموقع نفسه
- اجعل النسخة خارج السيرفر في حال حدث فقدان أو اختراق
- استخدم إشعارات البريد عند فشل النسخ (يمكنني إضافتها لو أردت)
خاتمة
نظام النسخ الاحتياطي التلقائي يمنحك راحة البال عند حدوث أي خطأ غير متوقع في موقعك. باتباع هذا الدليل، تكون قد ضمنت حفظ نسخة يومية من بياناتك، يمكن استرجاعها في دقائق. لا تهمل هذه الخطوة فهي أساس الأمان والاستمرارية.
- Log in to post comments