جدول المحتويات:
2025 مؤلف: John Day | [email protected]. آخر تعديل: 2025-01-13 06:56
سيوضح لك هذا التوجيه كيفية تشغيل نظام نسخ احتياطي واسترداد بسيط كامل الميزات على نظام Linux باستخدام rdiff-backup ومحرك أقراص USB.
الخطوة الأولى: الافتراضات
سأفترض نظامًا يستخدم yum للتثبيت وقام بتثبيت محرك أقراص USB على أنه /mnt//backup. أستخدم Fedora ، ولكن يمكنك استخدام أي شيء وتثبيت rdiff-backup فقط كيفما تشاء. كما أنه متاح للتنزيل من هنا:
الخطوة 2: تثبيت Rdiff-backup
تثبيت rdiff-backup [root @ HOST scripts] # yum install rdiff-backup
الخطوة 3: تحديد الدلائل التي تريد نسخها احتياطيًا
يمكنك الاحتفاظ بنسخة احتياطية من النظام بأكمله ، ولكن قد يكون ذلك مبالغة ، فأنا أرغب في إجراء نسخ احتياطي للدليل / etc / الخاص بي لأية تغييرات قد أجريها على الاسم أو الإرسال أو الشبكة أو ما إلى ذلك / البيانات و dirs منزلي.
الخطوة 4: أتمتة
من الواضح أنك لا تريد القيام بذلك يدويًا. سنقوم بكتابة برنامج نصي ، أول شيء في البرنامج النصي ، سوف نتحقق من تثبيت محرك أقراص USB ، وإنهاء الأمر إن لم يكن كذلك. #! / bin / bash # برنامج نصي للنسخ الاحتياطي إلى محرك أقراص USBBACKUPBASE = "/ backups" # تحقق لمعرفة ما إذا كان هدف النسخ الاحتياطي مثبتًا. if `df -h | grep $ BACKUPBASE> / dev / null `ثم echo" ابتداءً من $ 0 `date`" else echo "ERROR: لم يتم تثبيت $ BACKUPBASE" echo "$ 0 خروج" date "" خروج 1fi
الخطوة 5: اكتب وظيفة
بعد ذلك سنكتب وظيفة لعمل النسخ الاحتياطي بالفعل. وظيفة النسخ الاحتياطي {DEST = $ 1 $ 2 SOURCE = $ 2 echo "Src: $ SOURCE" إذا [-d $ DEST] ثم صدى "Dest: $ DEST" else mkdir -p $ DEST echo "Dest: $ DEST -created" OPTS = " - فرض "fi #Perform backup rdiff-backup -v2 - exclude-special-files $ OPTS $ SOURCE $ DEST # ملفات إصدار التنظيف الأقدم من 4 أسابيع rdiff-backup -v2 - إزالة - أقدم - من 4W --force $ DEST # اطبع تقريرًا عما قمنا بنسخه احتياطيًا وتنظيفه من rdiff-backup - list -ged -ged-since 0D23h00m $ DEST}
الخطوة 6: أخبر البرنامج النصي الذي يجب عليك نسخه احتياطيًا
backup $ BACKUPBASE / databackup $ BACKUPBASE / etcbackup $ BACKUPBASE / usr / localbackup $ BACKUPBASE / home
الخطوة 7: كل شيء معا الآن
#! / bin / bash # البرنامج النصي للنسخ الاحتياطي على محرك أقراص USBBACKUPBASE = "/ backups" # تحقق لمعرفة ما إذا كان محرك النسخ الاحتياطي قد تم تحميله. إذا كان `df -h | grep $ BACKUPBASE> / dev / null `ثم echo" بدءًا من $ 0 `date`" else echo "ERROR: لم يتم تثبيت $ BACKUPBASE" echo "$ 0 exiting` date` "خروج 1 نسخة احتياطية للوظيفة {DEST = $ 1 $ 2 SOURCE = $ 2 echo" Src: $ SOURCE "إذا [-d $ DEST] ثم صدى" Dest: $ DEST "else mkdir -p $ DEST echo" Dest: $ DEST -created "OPTS =" - فرض "fi #Perform backup rdiff-backup -v2 - exclude-special-files $ OPTS $ SOURCE $ DEST #Cleanup ملفات الإصدار الأقدم من 4 أسابيع rdiff-backup -v2 - إزالة أقدم من 4W - فرض $ DEST # طباعة تقرير عما قمنا بنسخه احتياطيًا وتنظيفه rdiff-backup - list-change-since 0D23h00m $ DEST} backup $ BACKUPBASE / databackup $ BACKUPBASE / etcbackup $ BACKUPBASE / usr / localbackup $ BACKUPBASE / home
الخطوة 8: أضف إلى Cron
[root @ HOST scripts] # crontab -e10 1 * * * /usr/local/scripts/backup-rdiff.sh> /var/log/backup.log 2> & 1
الخطوة 9: استعادة
لاستعادة أحدث إصدار ، يمكنك ببساطة نسخ الملف من دليل النسخ الاحتياطي. إذا كنت تريد إصدارًا من يومين مضت: rdiff-backup -r 2D /backup/etc/itled.conf /etc/itled.confSimple وفعال جدًا.