ar

استراتيجية النسخ الاحتياطي لـ VPS: الدليل الشامل

فقدان البيانات كارثة يمكن تجنبها بخطة نسخ احتياطي محكمة. سواء كان الأمر خطأ بشريًا أو فشلًا في الأجهزة أو هجومًا إلكترونيًا، فإن وجود نسخ احتياطية موثوقة هو الضمان الوحيد لاستمرار عملك. يشرح هذا الدليل كيفية بناء نظام نسخ احتياطي متكامل يعمل تلقائيًا على VPS الخارجي الخاص بك.

Need this done for your project?

We implement, you ship. Async, documented, done in days.

Start a Brief

قاعدة 3-2-1: المبدأ الذهبي للنسخ الاحتياطي

قاعدة 3-2-1 هي المعيار الصناعي لأي خطة نسخ احتياطي موثوقة: 3: احتفظ بثلاث نسخ من البيانات 2: احفظها على نوعين مختلفين من الوسائط 1: احتفظ بنسخة واحدة على الأقل خارج الموقع تطبيق على VPS الخارجي: - النسخة الأولى: الخادم الرئيسي نفسه - النسخة الثانية: VPS آخر أو تخزين سحابي (Backblaze B2, Wasabi) - النسخة الثالثة: تخزين محلي لديك أو خدمة أخرى مع VPS الخارجي من Anubiz Host، تحصل على بيئة مثالية لتطبيق هذا النظام بتكلفة منخفضة. احرص على اختبار استعادة البيانات من النسخ الاحتياطية بشكل دوري - النسخة غير المُختبرة قد تكون عديمة الفائدة.

النسخ الاحتياطي التلقائي للملفات باستخدام rsync

rsync أداة قوية للنسخ الاحتياطي المتزايد - ينقل فقط التغييرات الجديدة: أنشئ سكريبت النسخ الاحتياطي: nano /root/scripts/backup.sh أضف المحتوى: #!/bin/bash DATE=$(date +%Y-%m-%d) BACKUP_DIR="/backup/${DATE}" SOURCE_DIRS="/var/www /etc /home" LOG="/var/log/backup.log" mkdir -p "${BACKUP_DIR}" for DIR in ${SOURCE_DIRS}; do rsync -az --delete "${DIR}" "${BACKUP_DIR}/" echo "$(date): Backed up ${DIR}" >> "${LOG}" done # احذف النسخ الأقدم من 30 يومًا find /backup -type d -mtime +30 -exec rm -rf {} ; echo "$(date): Backup complete" >> "${LOG}" اجعله قابلًا للتنفيذ: chmod +x /root/scripts/backup.sh

نسخ احتياطي لقواعد البيانات MySQL/PostgreSQL

قواعد البيانات تحتاج معالجة خاصة لضمان اتساق البيانات. لـ MySQL: أنشئ سكريبت نسخ قواعد البيانات: nano /root/scripts/db-backup.sh #!/bin/bash DATE=$(date +%Y-%m-%d_%H-%M) BACKUP_DIR="/backup/db" DB_USER="root" MYSQL_PWD="${DB_PASSWORD}" mkdir -p "${BACKUP_DIR}" for DB in $(mysql -u"${DB_USER}" -p"${MYSQL_PWD}" -e 'show databases' -s --skip-column-names); do if [ "${DB}" != "information_schema" ] && [ "${DB}" != "performance_schema" ]; then mysqldump -u"${DB_USER}" -p"${MYSQL_PWD}" "${DB}" | gzip > "${BACKUP_DIR}/${DB}_${DATE}.sql.gz" fi done لـ PostgreSQL: pg_dumpall -U postgres | gzip > "${BACKUP_DIR}/postgresql_${DATE}.sql.gz" جدوِل النسخ الاحتياطي يوميًا عبر cron: crontab -e أضف: 0 2 * * * /root/scripts/db-backup.sh

النسخ الاحتياطي عن بُعد ورفع إلى التخزين السحابي

للامتثال لقاعدة 3-2-1، أرسل النسخ إلى موقع خارجي. استخدم rclone لرفع إلى أي خدمة سحابية: تثبيت rclone: curl https://rclone.org/install.sh | sudo bash إعداد الاتصال بـ Backblaze B2: rclone config اتبع التعليمات التفاعلية لإضافة B2 bucket. بعد الإعداد، أضف إلى سكريبت النسخ الاحتياطي: rclone sync /backup b2:my-backup-bucket --exclude "*.tmp" للنقل عبر SSH إلى خادم آخر: rsync -az -e "ssh -p 2222 -i /root/.ssh/backup_key" /backup/ backup-user@${REMOTE_IP}:/backups/myvps/ اختبر الاستعادة بشكل شهري: rsync -az b2:my-backup-bucket/2026-05-01/ /restore-test/ تحقق من سلامة الملفات المستعادة قبل الاعتماد عليها.

Why Anubiz Host

100% async — no calls, no meetings
Delivered in days, not weeks
Full documentation included
Production-grade from day one
Security-first approach
Post-delivery support included

Ready to get started?

Skip the research. Tell us what you need, and we'll scope it, implement it, and hand it back — fully documented and production-ready.

Anubiz Chat AI

Online