هذا هو الأمر rsnapshot الذي يمكن تشغيله في مزود الاستضافة المجانية OnWorks باستخدام إحدى محطات العمل المجانية المتعددة على الإنترنت مثل Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت
برنامج:
اسم
rsnapshot - أداة لقطة لنظام الملفات عن بُعد
موجز
rsnapshot [-vtxqVD] [-c cfgfile] [الأمر] [args]
الوصف
rsnapshot هي أداة لقطة لنظام الملفات. يمكن أن يستغرق الأمر لقطات تزايدي محلية و
أنظمة الملفات البعيدة لأي عدد من الأجهزة.
يتم التعامل مع لقطات نظام الملفات المحلية باستخدام رسينك(1). اتصالات آمنة عن بعد
التعامل مع rsync أكثر سه(1)، بينما تستخدم اتصالات rsync المجهولة ببساطة rsync
الخادم. تعتمد كل من عمليات النقل عن بُعد والمحلية على rsync.
rsnapshot يوفر مساحة قرص أكبر بكثير مما قد تتخيله. مقدار المساحة المطلوبة
حجم نسخة احتياطية كاملة تقريبًا ، بالإضافة إلى نسخة من كل ملف إضافي
تغيرت. rsnapshot يستخدم الروابط الصلبة على نطاق واسع ، لذلك إذا لم يتغير الملف ، فإن
اللقطة التالية هي ببساطة رابط ثابت لنفس الملف بالضبط.
rsnapshot عادةً ما يتم استدعاؤه كجذر من خلال وظيفة cron ، أو سلسلة من وظائف cron. إنها
من الممكن ، مع ذلك ، تشغيله كأي مستخدم تعسفي بملف تكوين بديل.
يتم تحديد جميع الخيارات المهمة في ملف التكوين ، والذي يقع افتراضيًا
at /etc/rsnapshot.conf. يمكن تحديد ملف بديل في سطر الأوامر. هناك
أيضًا خيارات إضافية يمكن تمريرها عبر سطر الأوامر.
خيارات سطر الأوامر هي كما يلي:
-v مطول ، إظهار أوامر قذيفة يجري تنفيذها
-t test ، أظهر أوامر shell التي سيتم تنفيذها
-c مسار ملف التكوين البديل
-x نظام ملفات واحد ، لا تعبر الأقسام داخل كل نقطة نسخ احتياطي
-q الهدوء وقمع التحذيرات غير المميتة
-V مثل -v ، ولكن بمزيد من التفاصيل
-D خرطوم إطفاء من المعلومات التشخيصية
CONFIGURATION
/etc/rsnapshot.conf هو ملف التكوين الافتراضي. يجب أن تكون جميع المعلمات في هذا الملف
مفصولة بعلامات تبويب. /usr/share/doc/rsnapshot/examples/rsnapshot.conf.default.gz ويمكن استخدام
كمرجع.
من المستحسن أن تنسخ
/usr/share/doc/rsnapshot/examples/rsnapshot.conf.default.gz إلى /etc/rsnapshot.confو
ثم تعديل /etc/rsnapshot.conf لتناسب احتياجاتك.
يمكن تقسيم الخطوط الطويلة على عدة أسطر. خطوط "استمرار" يجب تبدأ بمسافة
أو حرف جدولة. ستحتوي جميع الأسطر التكميلية على مسافات بيضاء في المقدمة والخلفية
تم تجريده ، ثم يتم إلحاقه بحرف جدولة متداخل بالسطر السابق
عندما يتم تحليل ملف التكوين.
فيما يلي قائمة بالمعلمات المسموح بها:
config_version إصدار ملف التكوين (مطلوب). الافتراضي هو 1.2
snapshot_root مسار نظام الملفات المحلي لحفظ جميع اللقطات
include_conf قم بتضمين ملف آخر في التكوين في هذه المرحلة.
هذا تكراري ، ولكن قد تحتاج إلى توخي الحذر بشأن المسارات عند التحديد
أي ملف لتضمينه. نتحقق لمعرفة ما إذا كان الملف الذي حددته هو
مقروء ، وسوف يصرخ خطأ إذا لم يكن كذلك. نوصي باستخدام مسار كامل. مثل
حالة خاصة ، يمكن تضمين قيمة include_conf في "backticks" في هذه الحالة
سيتم تنفيذه وأي شيء يبصق إلى STDOUT سيتم تضمينه في ملف
إعدادات. لاحظ أنه يمكن تفسير الأحرف الوصفية للقذيفة.
no_create_root إذا تم التعيين على 1 ، فلن يقوم rsnapshot بإنشاء دليل snapshot_root
cmd_rsync المسار الكامل إلى rsync (مطلوب)
cmd_ssh المسار الكامل إلى ssh (اختياري)
cmd_cp المسار الكامل إلى cp (اختياري ، لكن يجب أن يكون إصدار GNU)
إذا كنت تستخدم Linux ، فيجب عليك إلغاء تعليق cmd_cp. إذا كنت تستخدم منصة
الذي لا يحتوي على GNU cp ، يجب ترك الأمر cmd_cp معلقًا.
باستخدام GNU cp ، يمكن لـ rsnapshot الاهتمام بكل من الملفات العادية والملفات الخاصة (مثل
كأجهزة FIFOs ، ومآخذ ، وأجهزة كتلة / شخصية) في مسار واحد.
إذا تم تعطيل cmd_cp ، فسيستخدم rsnapshot وظيفته المضمنة ،
original_cp_al () لعمل نسخة احتياطية من الملفات والأدلة العادية. سيكون هذا بعد ذلك
يتبعها استدعاء منفصل لـ rsync ، لنقل الملفات الخاصة (على افتراض
هناك أي).
cmd_rm المسار الكامل إلى جمهورية مقدونيا (اختياري)
cmd_logger المسار الكامل إلى المسجل (اختياري ، لدعم سجل النظام)
cmd_du المسار الكامل إلى du (اختياري ، لتقارير استخدام القرص)
cmd_rsnapshot_diff المسار الكامل إلى rsnapshot-diff (اختياري)
cmd_preexec
المسار الكامل (بالإضافة إلى أي وسيطات) إلى البرنامج النصي preexec (اختياري). سيتم تشغيل هذا البرنامج النصي
مباشرة قبل كل عملية نسخ احتياطي (ولكن ليس أي دورات). إذا كان التنفيذ
فشل ، سيتوقف rsnapshot على الفور.
cmd_postexec
المسار الكامل (بالإضافة إلى أي وسيطات) إلى البرنامج النصي postexec (اختياري). هذا السيناريو سوف
قم بالتشغيل فورًا بعد كل عملية نسخ احتياطي (ولكن ليس أي دورات). إذا كان
فشل التنفيذ ، سيتوقف rsnapshot على الفور.
لينوكس_ lvm_cmd_lvcreate
linux_lvm_cmd_lvremove
linux_lvm_cmd_mount
linux_lvm_cmd_umount
مسارات لأوامر lvcreate و lvremove و mount و umount ، لاستخدامها مع Linux LVMs.
يمكنك تضمين خيارات للأوامر أيضًا. lvcreate ، lvremove ، جبل و
أوامر umount مطلوبة لإدارة لقطات وحدات تخزين LVM وهي
خلاف ذلك اختياري.
احتفظ [الاسم] [الرقم]
يشير "الاسم" إلى اسم مستوى النسخ الاحتياطي هذا (على سبيل المثال ، alpha ، beta ، ويسمى ذلك أيضًا
الفاصل'). "الرقم" هو عدد اللقطات لهذا النوع من الفاصل الزمني
التي سيتم الاحتفاظ بها. ستكون قيمة "الاسم" هي الأمر الذي يتم تمريره إليه
rsnapshot لأداء هذا النوع من النسخ الاحتياطي.
الاسم المستعار الذي تم إيقافه لـ "الاحتفاظ" هو "الفاصل الزمني".
على سبيل المثال: احتفظ ألفا 6
[root @ localhost] # rsnapshot ألفا
في هذا المثال ، في كل مرة يتم فيها تشغيل هذا ، سيحدث ما يلي:
سيتم حذف /alpha.5/ ، إن وجد.
/alpha.{1,2,3,4،1،XNUMX،XNUMX} سيتم تدويرها جميعًا +XNUMX ، إذا كانت موجودة.
سيتم نسخ /alpha.0/ إلى /alpha.1/ باستخدام الصعب
الروابط.
سيتم بعد ذلك مزامنة كل نقطة احتياطية (موضحة أدناه) إلى المقابل
الدلائل في /alpha.0/
يجب تحديد مستويات النسخ الاحتياطي في ملف التكوين بالترتيب ، من الأكثر تكرارًا إلى
الأقل تكرارًا. الإدخال الأول هو الذي سيتم مزامنته مع النسخة الاحتياطية
نقاط. مستويات النسخ الاحتياطي اللاحقة (على سبيل المثال ، بيتا ، جاما ، إلخ) ببساطة تدور ، باستخدام
يسحب كل مستوى نسخ احتياطي أعلى من المستوى الموجود أسفله للدليل .0 الخاص به.
على سبيل المثال:
احتفظ ألفا 6
احتفظ بيتا 7
احتفظ نطاق 4
سيتم نقل beta.0 / من alpha.5 / ، وسيتم نقل gamma.0 / من الإصدار التجريبي 6 /
سيتم مزامنة alpha.0 / مباشرة من نظام الملفات.
link_dest 1
إذا كان إصدار rsync لديك يدعم --link-dest (2.5.7 أو أحدث) ، فيمكنك تمكين
هذا للسماح لـ rsync بالتعامل مع بعض الأشياء التي قد تتعامل معها GNU cp أو الإجراءات الفرعية المضمنة
خلاف ذلك. يؤدي تمكين هذا إلى جعل rsnapshot يأخذ رمزًا أكثر تعقيدًا بعض الشيء
فرع ، لكنها أفضل طريقة لدعم الملفات الخاصة على أنظمة بخلاف Linux.
sync_first 1
sync_first يغير سلوك rsnapshot. عندما يتم تمكين هذا ، فإن جميع المكالمات إلى
rsnapshot مع مستويات النسخ الاحتياطي المختلفة ببساطة قم بتدوير الملفات. يتم التعامل مع كافة النسخ الاحتياطية
من خلال استدعاء rsnapshot باستخدام وسيطة "sync". يتم تخزين الملفات المتزامنة في ملف
دليل ".sync" ضمن snapshot_root.
يتيح ذلك استردادًا أفضل في حالة مقاطعة rsnapshot في ملف
في منتصف عملية المزامنة ، حيث يتم فصل خطوة المزامنة وخطوات التدوير.
هذا يعني أيضًا أنه يمكنك بسهولة تشغيل "مزامنة rsnapshot" في سطر الأوامر
دون خوف من إجبار كافة الدلائل الأخرى على الدوران لأعلى. هذه الفائدة
يأتي بتكلفة لقطة أخرى من مساحة القرص. الافتراضي هو 0
(إيقاف).
مطنب 2
مقدار المعلومات المطلوب طباعتها عند تشغيل البرنامج. القيم المسموح بها هي
من 1 إلى 5. الافتراضي هو 2.
1 قم بهدوء إظهار الأخطاء الفادحة فقط
2 افتراضي إظهار التحذيرات والأخطاء
3 Verbose اعرض أوامر shell المكافئة التي يتم تنفيذها
4 مطول إضافي مماثل لما هو مطول ، لكن بمزيد من التفاصيل
5 تصحيح جميع أنواع المعلومات
مستوى السجل 3
هذا الرقم يعني نفس الشيء مثل مطنب أعلاه ، لكنها تحدد مقدار البيانات
هو مكتوب في ملف السجل ، إذا كان واحدًا يتم كتابته.
ملف تسجيل / فار / سجل / rsnapshot
مسار نظام الملفات الكامل لملف سجل rsnapshot. إذا تم تعريف هذا ، ملف السجل
سيتم كتابتها ، مع التحكم في كمية البيانات مستوى السجل. إن كان هذا
علق ، لن يكتب أي ملف سجل.
تتضمن [نمط اسم الملف]
يتم تمرير هذا مباشرة إلى rsync باستخدام التوجيه --include. هذه المعلمة
يمكن تحديدها عدة مرات حسب الحاجة ، مع تحديد نمط واحد لكل سطر. يرى
هيه رسينك(1) دليل بناء الجملة.
منع [نمط اسم الملف]
يتم تمرير هذا مباشرة إلى rsync باستخدام التوجيه --exclude. هذه المعلمة
يمكن تحديدها عدة مرات حسب الحاجة ، مع تحديد نمط واحد لكل سطر. يرى
هيه رسينك(1) دليل بناء الجملة.
include_file / المسار / إلى / تضمين / ملف
يتم تمرير هذا مباشرة إلى rsync باستخدام التوجيه --include-from. انظر
رسينك(1) دليل بناء الجملة.
استبعاد ملف / المسار / إلى / استبعاد / ملف
يتم تمرير هذا مباشرة إلى rsync باستخدام التوجيه --exclude-from. انظر
رسينك(1) دليل بناء الجملة.
rsync_short_args -a
قائمة الحجج القصيرة لتمريرها إلى rsync. إذا لم يتم تحديده ، فإن "-a" هي الخيار الافتراضي.
يرجى ملاحظة أن كل هذه يجب أن تكون بجوار بعضها البعض. على سبيل المثال ، "-az" هي
صالح ، بينما "-a -z" ليس كذلك.
"-a" هو "وضع الأرشيف" الخاص بـ rsync والذي يخبرها بنسخ أكبر قدر من نظام الملفات
البيانات الوصفية بقدر الإمكان لكل ملف. هذا على وجه التحديد * لا * يشمل
معلومات حول الروابط الصلبة ، حيث سيؤدي ذلك إلى زيادة استخدام ذاكرة rsync بشكل كبير
ويبطئها. إذا كنت بحاجة إلى الاحتفاظ بالروابط الصلبة في النسخ الاحتياطية ، فقم بإضافة
"ح" لهذا.
rsync_long_args --حذف - معرفات رقمية --نسبيا - حذف - مستبعد
قائمة الحجج الطويلة لتمريرها إلى rsync. القيم الافتراضية هي
- حذف - المعرفات الرقمية - النسبية - حذف - استبعاد هذا يعني أن ملف
سوف تتطابق بنية الدليل في كل وجهة نقطة نسخ احتياطي مع تلك الموجودة في النسخة الاحتياطية
نقطه المصدر.
يُسمح بعلامات الاقتباس في rsync_long_args ، على سبيل المثال --rsync-path = "sudo / usr / bin / rsync".
يمكنك استخدام علامات الاقتباس المفردة (") أو المزدوجة (") ، لكن علامات الاقتباس المتداخلة (بما في ذلك
الاقتباسات المتداخلة المختلطة) غير مسموح بها. يُسمح أيضًا بالاقتباس المماثل في
نقطة النسخ الاحتياطي rsync_long_args.
ssh_args -p 22
الحجج التي يتعين تمريرها إلى ssh. إذا لم يتم تحديده ، فإن الافتراضي هو لا شيء.
du_args -csh
سيتم تحويل الحجج إلى du. إذا لم يتم تحديده ، يكون الافتراضي هو -csh. جنو دو
يدعم -csh ، BSD du يدعم -csk ، لا يدعم Solaris du -c على الإطلاق. غنو
يوصى بإصداره ، لأنه يوفر معظم الميزات.
ملف القفل /var/run/rsnapshot.pid
stop_on_stale_lockfile 0
Lockfile للاستخدام عند تشغيل rsnapshot. هذا يمنع الاحتجاج الثاني من
ضرب أول واحد. إذا لم يتم تحديده ، فلن يتم استخدام ملف قفل. تاكد من
استخدام دليل غير قابل للكتابة عالميًا لأسباب أمنية. استخدام القفل
ينصح بشدة الملف.
إذا كان ملف القفل موجودًا عند بدء rsnapshot ، فسيحاول قراءة الملف والتوقف
مع وجود خطأ إذا لم تستطع. إذا كان * يمكنه * قراءة الملف ، فإنه يرى ما إذا كانت هناك عملية
مع PID المدوّن في الملف. إذا كان الأمر كذلك ، فإن rsnapshot يتوقف مع وجود خطأ
رسالة. إذا لم تكن هناك عملية باستخدام PID ، فإننا نفترض أن ملف القفل
لا معنى له وتجاهلها * ما لم يتم ضبط * stop_on_stale_lockfile على 1 في هذه الحالة
نتوقف.
الافتراضي stop_on_stale_lockfile هو 0.
واحد_ف 1
يمنع rsync من عبور أقسام نظام الملفات. ضبط هذا على قيمة 1
تمكن هذه الميزة. 0 يطفئه. هذه المعلمة اختيارية. الافتراضي هو
0 (إيقاف).
use_lazy_deletes 1
يغير السلوك الافتراضي لـ rsnapshot ولا يزيل الأقدم في البداية
لمحة. بدلاً من ذلك ، ينقل هذا الدليل إلى _delete. [processid] ويستمر كـ
طبيعي. بمجرد اكتمال النسخ الاحتياطي ، ستتم إزالة ملف القفل من قبل
يبدأ rsnapshot في حذف الدليل.
يعني تمكين هذا أنه يتم التقاط اللقطات في وقت أقرب (نظرًا لأن الحذف لا يأتي
أولاً) ، ويُسمح لأي عمليات rsnapshot أخرى بالبدء أثناء النهائي
الحذف يحدث. تأتي هذه الميزة على حساب استخدام مساحة أكبر على القرص. ال
الافتراضي هو 0 (إيقاف).
لقد تغيرت تفاصيل كيفية عمل ذلك في الإصدار 1.3.1 من rsnapshot. في الأصل
يمكن أن يكون لديك دليل حذف واحد فقط لكل مستوى نسخ احتياطي. الآن يمكنك الحصول على
كثير ، لذلك إذا تم تشغيل النسخة الاحتياطية التالية (على سبيل المثال) ألفا بينما لا تزال النسخة السابقة
عند إجراء حذف بطيء ، قد يكون لديك أدلة _delete إضافية معلقة مؤقتًا
حول.
حجم الملف 2G
حجم (لقطات) LVM (خيار lvcreate - الحجم).
linux_lvm_snapshotname rsnapshot
الاسم الذي سيتم استخدامه عند إنشاء لقطة (لقطات) وحدة تخزين منطقية LVM (lvcreate --name
اختيار).
linux_lvm_vgpath / ديف
المسار إلى مجموعات وحدات تخزين LVM.
linux_lvm_mountpath / mnt / lvm-snapshot
نقطة التثبيت المراد استخدامها لتثبيت اللقطة (اللقطات) مؤقتًا.
دعم /إلخ/ مضيف محلي /
دعم [البريد الإلكتروني محمي]:/إلخ/ example.com/
دعم rsync: //example.com/path2/ example.com/
دعم / فار / المضيف المحلي / one_fs = 1
دعم lvm: // vg0 / home / path2 / lvm-vg0 /
النسخ الاحتياطي /usr/local/bin/backup_pgsql.sh pgsql_backup /
أمثلة:
دعم /إلخ/ مضيف محلي /
النسخ الاحتياطي /إلخ/ ل / .0 / localhost / etc / باستخدام rsync على ملف
نظام الملفات المحلي
دعم / usr / local / مضيف محلي /
النسخ الاحتياطي / usr / local / ل / .0 / localhost / usr / local / using
rsync على نظام الملفات المحلي
دعم [البريد الإلكتروني محمي]:/إلخ/ example.com/
النسخ الاحتياطي [البريد الإلكتروني محمي]:/إلخ/ ل / .0 / example.com / etc /
باستخدام rsync عبر ssh
دعم example.com:/إلخ/ example.com/
نفس الشيء ولكن دع ssh تختار اسم المستخدم البعيد (كما هو محدد في
~ / .ssh / التكوين، وإلا فسيكون هو نفسه اسم المستخدم المحلي)
دعم [البريد الإلكتروني محمي]:/ usr / local / example.com/
النسخ الاحتياطي [البريد الإلكتروني محمي]:/ usr / local / إلى
/ .0 / example.com / usr / local / using rsync over ssh
دعم rsync: //example.com/pub/ example.com/pub/
نسخ rsync احتياطيًا: //example.com/pub/ إلى
/ .0 / example.com / pub / باستخدام خادم rsync مجهول.
يرجى ملاحظة أنه بخلاف النسخ الاحتياطي للمسارات المحلية واستخدام rsync عبر ssh ، فإن rsync
تحتوي الخوادم على "وحدات نمطية" ، وهي عبارة عن أدلة من المستوى الأعلى يتم تصديرها.
لذلك ، يجب أيضًا تحديد الوحدة النمطية في مسار الوجهة ، مثل
الموضح في المثال أعلاه (pub / directory في النهاية).
دعم / فار / مضيف محلي / one_fs = 1
هذا هو نفس الأمثلة الأخرى ، لكن لاحظ العمود الرابع. هذا هو
كيف تحدد خيارات كل نقطة احتياطية لتجاوز الإعدادات العامة. هذا
يمكن أن تتخذ المعلمة الإضافية عدة خيارات ، مفصولة بـ الفواصل.
يكون أكثر فائدة عند تحديد لكل نسخة احتياطية ، يستبعد rsync بالتالي:
دعم الجذر @ somehost: / مضيف ما + rsync_long_args = - استبعاد =/ var / spool /
لاحظ علامة +. هذا يقول rsnapshot ل تضيف إلى قائمة الحجج لتمريرها
إلى rsync بدلاً من استبدال القائمة.
دعم lvm: // vg0 / home / path2 / lvm-vg0 /
يدعم وحدة التخزين المنطقية LVM المسمى home ، لمجموعة التخزين vg0 ، إلى
/ .0 / lvm-vg0 /. سيتم إنشاء وتثبيت ونسخ احتياطي وإلغاء تحميل و
قم بإزالة لقطة LVM لكل إدخال lvm: //.
النسخ الاحتياطي /usr/local/bin/backup_database.sh db_backup /
في هذا المثال ، نحدد نصًا أو برنامجًا لتشغيله. يجب أن يكون هذا السيناريو
ببساطة قم بإنشاء الملفات و / أو الدلائل في دليل العمل الحالي الخاص بها.
سيأخذ rsnapshot هذا الإخراج وينقله إلى الدليل المحدد
في العمود الثالث.
يرجى ملاحظة أن كل ما هو موجود في دليل الوجهة سيكون بالكامل
تم حذفها وإعادة إنشائها. لهذا السبب ، يمنعك rsnapshot من تحديد ملفات
دليل وجهة لملف backup_script من شأنه أن يعيق النسخ الاحتياطية الأخرى.
لذلك في هذا المثال ، لنفترض أن البرنامج النصي backup_database.sh يقوم ببساطة بتشغيل أمر ما
مثل:
#!/ بن / ش
mysqldump -uusername mydatabase> mydatabase.sql
chmod u = r، go = mydatabase.sql # r -------- (0400)
سيأخذ rsnapshot ملف "mydatabase.sql" الذي تم إنشاؤه وينقله إلى ملف
/ .0 / db_backup / دليل. في عمليات التشغيل اللاحقة ، rsnapshot
يتحقق من الاختلافات بين الملفات التي تم إنشاؤها مقابل الملفات السابقة.
إذا كان البرنامج النصي للنسخ الاحتياطي يولد نفس الإخراج في التشغيل التالي ، فستقوم الملفات بذلك
كن مرتبطًا بشدة بالسابقات ، ولن تكون هناك مساحة إضافية على القرص
مأخوذ.
Backup_exec سه [البريد الإلكتروني محمي] "du -ش /.offsite_backup "
خياري/ Backup_exec رسينك -عز /.snapshots/daily.0
[البريد الإلكتروني محمي]: /. offsite_backup / مطلوب/ Backup_exec / بن / صحيح /
Backup_exec يقوم ببساطة بتشغيل الأمر المذكور. الحجة الثانية ليست كذلك
مطلوب ويتم تعيينه افتراضيًا على قيمة "اختيارية". إنه يحدد الأهمية
أن الأمر يُرجع 0. القيم الصالحة "اختيارية" و "مطلوبة". إذا كان
يتم تحديد الأمر على أنه اختياري ، وسوف تكون حالة الخروج غير الصفرية من الأمر
يؤدي إلى إخراج رسالة تحذير. إذا تم تحديد الأمر كـ
"مطلوب" ، ستؤدي حالة الخروج غير الصفرية من الأمر إلى حدوث خطأ
يتم إخراج الرسالة وستخرج rsnapshot نفسها مع خروج غير صفري
الحالة.
تذكر أن علامات التبويب يجب أن تفصل بين جميع العناصر ، ويجب أن تكون هناك شرطة مائلة
في نهاية كل دليل.
يتم التعامل مع علامة التجزئة (#) في بداية السطر كتعليق.
وضع كل ذلك معًا (مثال على ملف):
# هذا تعليق ، يجب أن تفصل علامات التبويب عن جميع العناصر
تكوين_الإصدار 1.2
snapshot_root /.snapshots/
cmd_rsync / usr / bin / rsync
cmd_ssh / البيرة / بن / ssh
#cmd_cp / بن / cp
cmd_rm / بن / جمهورية مقدونيا
cmd_logger / البيرة / بن / المسجل
cmd_du / usr / bin / du
linux_lvm_cmd_lvcreate / sbin / lvcreate
linux_lvm_cmd_lvremove / sbin / lvremove
linux_lvm_cmd_mount / بن / جبل
linux_lvm_cmd_umount / بن / umount
linux_lvm_snapshotsize 2G
linux_lvm_snapshotname rsnapshot
linux_lvm_vgpath / ديف
linux_lvm_mountpath / mnt / lvm-snapshot
احتفظ بألفا 6
الاحتفاظ ببيتا 7
الاحتفاظ بجاما 7
دلتا الاحتفاظ 3
دعم /إلخ/ مضيف محلي /
دعم /الصفحة الرئيسية/ مضيف محلي /
backup_script /usr/local/bin/backup_mysql.sh mysql_backup /
دعم [البريد الإلكتروني محمي]:/إلخ/ foo.com/
دعم [البريد الإلكتروني محمي]:/الصفحة الرئيسية/ foo.com/
دعم [البريد الإلكتروني محمي]:/الصفحة الرئيسية/ mail.foo.com/
rsync احتياطيًا: //example.com/pub/ example.com/pub/
النسخ الاحتياطي lvm: // vg0 / xen-home / lvm-vg0 / xen-home /
صدى backup_exec "النسخ الاحتياطي انتهى!"
الاستعمال
rsnapshot يمكن استخدامها من قبل أي مستخدم ، ولكن بالنسبة للنسخ الاحتياطية على مستوى النظام قد ترغب في ذلك
قم بتشغيله كجذر.
نظرًا لأن النسخ الاحتياطية عادةً ما يتم إهمالها إذا كان التدخل البشري مطلوبًا ، فإن الطريقة المفضلة
هو تشغيله من كرون.
عندما تقوم بإعداد النسخ الاحتياطية لأول مرة ، فربما تريد أيضًا تشغيلها من ملف
سطر الأوامر مرة أو مرتين للتعرف على ما يفعله.
فيما يلي مثال لإدخال crontab ، بافتراض أن مستويات النسخ الاحتياطي ألفا, بيتا, نطاق دلتا
تم تعريفها في /etc/rsnapshot.conf
0 * / 4 * * * / usr / bin / rsnapshot ألفا
50 23 * * * / usr / bin / rsnapshot بيتا
40 23 * * 6 / usr / bin / rsnapshot نطاق
30 23 1 * * / usr / bin / rsnapshot دلتا
سيقوم هذا المثال بما يلي:
6 نسخ احتياطية ألفا يوميًا (مرة كل 4 ساعات بمعدل 0,4,8,12,16,20،XNUMX،XNUMX،XNUMX،XNUMX،XNUMX)
1 نسخة احتياطية تجريبية كل يوم ، الساعة 11:50 مساءً
1 غاما احتياطيًا كل أسبوع ، الساعة 11:40 مساءً ، أيام السبت (اليوم السادس من الأسبوع)
1 دلتا النسخ الاحتياطي كل شهر ، الساعة 11:30 مساءً في اليوم الأول من الشهر
من المستحسن عادةً جدولة مستويات النسخ الاحتياطي الأكبر للتشغيل قليلاً قبل
السفلية. على سبيل المثال ، في crontab أعلاه ، لاحظ أن "beta" تعمل قبل 10 دقائق
"ألفا". السبب الرئيسي لذلك هو أن تدوير الإصدار التجريبي سوف يسحب أقدم ألفا
وجعل هذا الإصدار التجريبي الأصغر (مما يعني أن تدوير ألفا التالي لن يحتاج إلى ذلك
حذف أقدم ألفا) ، وهو أكثر كفاءة. سبب ثانوي هو أنه كذلك
يصعب التنبؤ بالمدة التي سيستغرقها أدنى مستوى نسخ احتياطي ، لأنه يحتاج إلى ذلك بالفعل
قم بإجراء rsync للمصدر بالإضافة إلى التدوير الذي تقوم به جميع النسخ الاحتياطية.
إذا استغرق rsnapshot وقتًا أطول من 10 دقائق لإجراء تدوير "تجريبي" (والذي يتضمن عادةً
حذف أقدم لقطة تجريبية) ، ثم يجب زيادة الوقت بين النسخ الاحتياطي
المستويات. خلاف ذلك (على افتراض أنك قمت بتعيين ملف ملف القفل المعلمة ، كما هو موصى به) الخاص بك
ستفشل لقطة alpha في بعض الأحيان لأن الإصدار التجريبي لا يزال مغلقًا.
تذكر أن هذه هي الأوقات التي يتم فيها تشغيل البرنامج. لتعيين عدد
النسخ الاحتياطية المخزنة ، اضبط ملف احتفظ الأرقام في /etc/rsnapshot.conf
للتحقق من مساحة القرص التي تستخدمها rsnapshot ، يمكنك تسميتها باستخدام وسيطة "du".
فمثلا:
rsnapshot du
سيُظهر لك هذا بالضبط مقدار مساحة القرص التي يتم شغلها في جذر اللقطة. هذا
تتطلب الميزة UNIX du الأمر المراد تثبيته على نظامك ، من أجل دعم ملفات
وسيطات سطر الأوامر "-csh" ، وأن تكون في طريقك. يمكنك أيضًا تجاوز مسارك
الإعدادات والأعلام التي تم تمريرها إلى du باستخدام معلمات cmd_du و du_args.
من الممكن أيضًا تمرير مسار ملف نسبي كوسيطة ثانية للحصول على تقرير
ملف معين أو دليل فرعي.
rsnapshot du المضيف المحلي / المنزل /
نسخة جنو من "du" مفضلة. يعمل إصدار BSD بشكل جيد أيضًا ، لكنه لا يعمل
دعم العلامة -h (استخدم -k بدلاً من ذلك ، لمعرفة الإجماليات بالكيلو بايت). إصدارات أخرى من
قد لا تعمل "du" ، مثل Solaris على الإطلاق.
للتحقق من الاختلافات بين مجلدين ، استدع rsnapshot باستخدام الوسيطة "diff" ،
متبوعًا بمستويين للنسخ الاحتياطي أو مسارات الدليل.
فمثلا:
rsnapshot فرق بيتا 0 بيتا 1
rsnapshot فرق beta.0 / localhost / etc beta.1 / localhost / etc
rsnapshot فرق /.snapshots/beta.0 /.snapshots/beta.1
سيؤدي هذا إلى استدعاء برنامج rsnapshot-diff ، والذي سيفحص كلا الدليلين بحثًا عنهما
الاختلافات (بناءً على الروابط الصلبة).
rsnapshot مزامنة
متى sync_first تم تمكينه ، يجب أولاً استدعاء rsnapshot بامتداد مزامنة جدال،
متبوعًا بإدخالات cron المعتادة الأخرى. يجب أن تحدث المزامنة على أنها الأقل ، والأكثر
مستوى النسخ الاحتياطي المتكرر ، وقبل ذلك مباشرة. على سبيل المثال:
0 * / 4 * * * / usr / bin / rsnapshot مزامنة && / usr / bin / rsnapshot ألفا
50 23 * * * / usr / bin / rsnapshot بيتا
40 23 1,8,15,22 * * / usr / bin / rsnapshot نطاق
30 23 1 * * / usr / bin / rsnapshot دلتا
تعمل عملية المزامنة ببساطة على تشغيل rsync وجميع البرامج النصية للنسخ الاحتياطي. في هذا السيناريو ، كل شيء
المكالمات ببساطة تناوب الدلائل ، حتى أدنى مستوى النسخ الاحتياطي.
rsnapshot مزامنة [مصير]
متى sync_first تم تمكينه ، يحدث كل سلوك المزامنة أثناء خطوة مزامنة إضافية
(أنظر فوق). عند استخدام وسيطة المزامنة ، من الممكن أيضًا تحديد نسخة احتياطية
وجهة النقطة كمعامل اختياري. إذا تم ذلك ، فقط نقاط احتياطية
ستتم مزامنة مشاركة مسار الوجهة هذا.
على سبيل المثال ، لنفترض أن example.com هو مسار وجهة يتقاسمه واحد أو أكثر من
نقاطك الاحتياطية.
rsnapshot مزامنة example.com
سيقوم هذا الأمر فقط بمزامنة الملفات التي عادةً ما يتم نسخها احتياطيًا إلى example.com.
لن تحصل على أي نقاط احتياطية أخرى بقيم مختلفة قليلاً (مثل
example.com/etc/ ، على سبيل المثال). لمزامنة example.com/etc ، ستحتاج إلى
قم بتشغيل rsnapshot مرة أخرى ، باستخدام example.com/etc كمعامل اختياري.
rsnapshot com.configtest
قم بإجراء فحص سريع للعقل للتأكد من أن كل شيء جاهز للعمل.
EXIT القيم
0 اكتملت جميع العمليات بنجاح
1 حدث خطأ فادح
2 حدثت بعض التحذيرات ، لكن النسخ الاحتياطي لا يزال منتهيًا
استخدم rsnapshot عبر الإنترنت باستخدام خدمات onworks.net