لا تخاطر بفقدان البيانات. قم بعمل نسخة احتياطية لبياناتك القيمة من سطر أوامر Linux. سنستخدم rsync
لقد وجدنا أمرًا لهذا، وحتى أننا وجدنا بعض الواجهات الرسومية الاختيارية الرائعة لذلك.
rsync هو الأفضل للنسخ الاحتياطية
هناك العديد من الطرق لإنجاز عمل نسخة احتياطية من ملفاتك. أردنا أن نعرض لك طريقة قوية ومرنة وموثوقة لحماية بياناتك. اخترنا rsync
بسببها خوارزميات تحظى بالاحترام تحسب الاختلافات بين الملفات الموجودة في دليل المصدر ودليل الهدف. يتم نقل الاختلافات بين نسختين من الملف فقط، وليس الملف بأكمله إذا كان من الممكن تجنب ذلك.
عندما يتم إقران هذه الكفاءة بسجلها القوي في تنفيذ عمليات نسخ الملفات ومزامنة الدليل منذ منتصف التسعينيات، rsync
يعد مرشحًا مثاليًا لإنشاء نسخ احتياطية من سطر أوامر Linux.
بالإضافة إلى ذلك، هناك برامج برمجية مستقلة تعمل كواجهة أمامية لـ rsync
. إنهم يوفرون واجهات مستخدم رسومية (GUIs) لـ rsync
والتي قد يجدها بعض الأشخاص أسهل في الاستخدام.
كلما كان إجراء النسخ الاحتياطي أسهل وأسرع، كلما زادت احتمالية قيامك بذلك.
استخدام rsync مع محرك أقراص ثابت خارجي
لعمل نسخة احتياطية من بياناتك على محرك أقراص ثابت خارجي، يجب أن يكون محرك الأقراص الثابت مثبتًا ويمكن الوصول إليه. إذا كان بإمكانك الكتابة عليه، فيمكنك أيضًا rsync
في هذا المثال، تم توصيل محرك أقراص USB خارجي يسمى SILVERXHD (اختصارًا لـ “محرك الأقراص الصلبة الخارجي Silver”) بجهاز كمبيوتر يعمل بنظام Linux. وقد تم تثبيته تلقائيًا بواسطة نظام التشغيل.
سوف تحتاج إلى معرفة المسار إلى محرك الأقراص. في GNOME، افتح متصفح ملفات Nautilus وحدد اسم محرك الأقراص في الشريط الجانبي.
قم بتمرير مؤشر الماوس فوق اسم محرك الأقراص الخارجي وسوف يظهر لك شريط أدوات يوضح لك المسار إلى محرك الأقراص.
في هذا المثال، تخبرنا أداة الإرشاد أن نقطة التثبيت لنظام الملفات على محرك الأقراص الخارجي هي “/media/dave/SILVERXHD”.
إذا لم يقم متصفح الملفات لديك بذلك، فانتقل إلى محرك الأقراص الخارجي وافتح نافذة المحطة الطرفية في هذا الموقع. استخدم الأمر pwd لطباعة المسار إلى نافذة المحطة الطرفية.
نسخ المحتويات من الدليل المصدر
للإستخدام rsync
لنسخ محتويات الدليل إلى وجهة النسخ الاحتياطي، استخدم الأمر التالي. يؤدي الخيار -r (المتكرر) إلى rsync
لنسخ كافة الدلائل الفرعية المتداخلة ومحتوياتها. لاحظ وجود شرطة مائلة للأمام “/” في نهاية الكلمة “SILVERXHD”، ولكنها ملتفة إلى السطر التالي في لقطة الشاشة.
rsync -r /home/dave/Documents/ /media/dave/SILVERXHD/
سيتم نسخ الملف، وسيتم إرجاعك إلى موجه سطر الأوامر.
إذا نظرنا إلى محرك أقراص USB الخارجي، فسنرى أن المجلدات الموجودة في دليل المستندات تم نسخها إلى جذر محرك الأقراص الخارجي.
ls
نسخ الدليل المصدر ومحتوياته
إذا كنت تريد نسخ دليل المستندات ومحتوياته إلى محرك الأقراص الخارجي، فقم بإزالة “/” من نهاية “/home/dave/Documents” في سطر الأوامر، مثل هذا:
rsync -r /home/dave/Documents /media/dave/SILVERXHD/
لتجنب الارتباك، قمت بإزالة الدليلين المنسوخين سابقًا من محرك الأقراص الخارجي قبل تنفيذ هذا الأمر الثاني.
إذا تركنا النسخة الثانية تكتمل وألقينا نظرة أخرى على محرك الأقراص الخارجي، فسنرى أن دليل المستندات قد تم نسخه. ومحتوياته موجودة داخل هذا الدليل. وهي ليست في جذر محرك الأقراص الخارجي.
النسخ إلى دليل هدف محدد
لنسخ محتويات دليل محدد على القرص الصلب المستهدف، أضف اسم الدليل إلى مسار الهدف. لنفترض أننا نريد نسخ محتويات الدليل “/home/dave/Documents” إلى دليل يسمى “backups” على القرص الصلب الخارجي.
سنفعل ذلك باستخدام الأمر التالي.
rsync -r /home/dave/Documents/ /media/dave/SILVERXHD/backups/
عند التحقق من محرك الأقراص الخارجي، يمكننا أن نرى أنه تم إنشاء دليل النسخ الاحتياطية، وداخل هذا الدليل توجد محتويات الدليل “/home/dave/Documents”.
ls
ls backups
الحفاظ على ملكية الملف والأذونات
استخدم -a
خيار (الأرشيف) للحفاظ على سمات الملف مثل تواريخ التعديل، وملكية الملف، وأذونات الوصول، والمزيد، للملفات المنسوخة، والروابط الرمزية، وملفات الكتل الخاصة.
rsync -ra /home/dave/Documents/ /media/dave/SILVERXHD/backups/
استخدام الوضع المطول
ال -v
(القوة الخيارية) rsync
لإدراج الملفات أثناء نسخها.
rsync -rav /home/dave/Documents/ /media/dave/SILVERXHD/backups/
يتم عرض ملخص للنسخة الاحتياطية عند اكتمال النسخ.
- تم الإرسال: البايتات المنقولة إلى الهدف.
- تم الاستلام: البايتات المستلمة على المضيف.
- بايت/ثانية: هو معدل النقل الفعال.
- الحجم الإجمالي: يمثل حجم البيانات التي كان من المفترض إرسالها إذا لم تكن تستخدم
rsync
. في الجولات اللاحقة منrsync
سيتم نقل اختلافات الملفات فقط. سيمثل هذا الرقم البيانات التي لم يكن من الضروري نقلها. - التسريع: هذه هي النسبة بين كمية البيانات التي يجب إرسالها والكمية الإجمالية للبيانات الموجودة. إذا
rsync
يحتاج إلى نسخ جميع الملفات بالكامل (في المرة الأولى التي يتم فيها تشغيله، على سبيل المثال)، ستكون السرعة 1.0. عندماrsync
عند استخدام الأمر التالي، سيتم تحسين عمليات النقل. سيتم فقط إرسال الاختلافات بين الملفات، وليس الملفات بأكملها. سيتم تجاهل الملفات التي لا تحتوي على أي تغييرات. سيمثل رقم التسريع النسبة بين الكمية الصغيرة من البيانات التي كان من المطلوب نقلها مقابل الحجم الإجمالي للملفات.
استخدام خيار التقدم
ال -P
خيار (التقدم) يسبب rsync
لإنشاء تقرير تقدم صغير بعد نسخ كل ملف.
rsync -raP /home/dave/Documents/ /media/dave/SILVERXHD/backups/
يمكن رؤية المعلومات المقدمة بين كل ملف تم نسخه.
المعلومات المقدمة هي:
- حجم البايت: البيانات المنقولة لهذا الملف.
- النسبة المئوية: النسبة المئوية للملف المنقول.
- ب/س: معدل نقل البيانات.
- الوقت المتبقي: الوقت المقدر المتبقي لنقل هذا الملف.
- xfr#: عدد الملفات المنقولة حتى الآن.
- to-chk: عدد الملفات المتبقية ليتم فحصها والتحقق منها بواسطة خوارزميات التحسين.
إضافة المزيد من السرعة
لتسريع عمليات النقل، استخدم -z
خيار (الضغط). يؤدي هذا إلى ضغط الملف أثناء النقل، ولكن يتم تخزين الملف بدون ضغط في الدليل المستهدف.
لن يؤدي خيار الضغط إلى تحقيق فوائد كبيرة لعمليات النقل التي تتضمن العديد من الملفات الصغيرة. أما بالنسبة لمجموعات الملفات الأكبر حجمًا، فيمكنه تقليل وقت النقل بشكل مفيد.
نحن نستخدم أيضا --partial
الخيار هنا. rsync
سيؤدي ذلك إلى حذف الملفات المنقولة جزئيًا والتي تسبب فيها خلل في الشبكة أو انقطاعات أخرى. --partial
قوات الخيار rsync
لترك الملفات المنقولة جزئيًا على الهدف. الوقت الصافي rsync
لن يضطر تشغيله إلى إعادة نقل أجزاء من الملفات المنقولة جزئيًا.
لاحظ أنك قد لا ترغب في استخدام هذا الخيار إذا كان هناك خطر من أن يخطئ شخص ما بين الملفات المنقولة جزئيًا والملفات المنقولة بالكامل.
rsync -ravz --partial /home/dave/Documents/ /media/dave/SILVERXHD/backups/
في مثالنا، الفوائد هامشية.
لقد تحسنت نسبة التسريع ولكن بنسبة مائتي جزء من المائة! في سيناريو واقعي، ستكون تحسينات السرعة لديك أكثر إثارة للإعجاب.
استخدام rsync عبر الشبكة
حتى الآن، كنا نستهدف محرك أقراص USB خارجيًا. لاستخدام موقع شبكة كهدف للنسخ الاحتياطي، استخدم المسار إلى هذا الموقع على سطر الأوامر. يوجد جهاز تخزين متصل بالشبكة (NAS) على الشبكة التي تم البحث فيها عن هذه المقالة.
يمكننا استخدام نفس الحيلة التي استخدمناها سابقًا لتحديد المسار إلى NAS، وذلك بتمرير الماوس فوق الاتصال بهذا الجهاز في Nautilus.
لا توجد خيارات خاصة للنسخ الاحتياطي عبر الشبكة؛ فهذه كلها خيارات استخدمناها بالفعل.
rsync -ravz --partial /home/dave/Documents/ /media/dave/NAS/dave/backups/
لا يوجد فرق في شكل الإخراج.
ليس من المستغرب أن يكون هناك تحسن كبير في الرقم بايت/ثانية.
إذا ركضنا rsync
مرة أخرى، يمكننا أن نرى أنه لا توجد ملفات لنقلها لأنه لم تحدث أي تغييرات، ولكن لا يزال هناك بعض البايتات المنقولة ذهابًا وإيابًا. هذا هو مقدار البيانات التي يجب نقلها لمقارنة قائمة الملفات على الهدف بقائمة الملفات على المصدر.
إن نسبة التسريع في هذه الحالة أفضل بمقدار كبير. وفي الممارسة العملية، ستكون نسب الأداء لديك في مكان ما بين قراءتينا الزائفتين.
استخدام rsync عبر SSH
rsync
يدعم النسخ الاحتياطي عبر اتصال SSH. نحتاج إلى توفير اسم حساب المستخدم وموقع SSH على سطر الأوامر. نحن نستخدم اسم شبكة هنا، ولكن يمكنك أيضًا استخدام عنوان IP.
لاحظ العلامة “:” بين تفاصيل اتصال SSH وبداية مسار الشبكة على الهدف البعيد.
rsync -ravz --partial /home/dave/Documents/ dave@sulaco.local:/home/dave/Backups/
سيُطلب منك إدخال كلمة المرور لحساب المستخدم على الجهاز البعيد. هذه ليست كلمة المرور الخاصة بك على الجهاز المصدر.
سيتم إكمال عملية النسخ الاحتياطي كالمعتاد. لا يكون معدل النقل سريعًا مثل اتصال الشبكة العادي، وذلك بسبب التشفير وفك التشفير اللذين يتمان في اتصال shell الآمن.
أتمتة عمليات النسخ الاحتياطي الخاصة بك
يمكننا بسهولة إنشاء نسخ احتياطية تلقائية عن طريق إضافة إدخالات إلى ملف crontab الخاص بك.
crontab -e
سنقوم بإعداد نسخة احتياطية آلية ليتم تشغيلها كل يوم في الساعة 04:30 (إذا كان الكمبيوتر قيد التشغيل في ذلك الوقت، بالطبع). rsync
الأمر لا يتغير على الإطلاق.
سيؤدي الضغط على Ctrl+O إلى كتابة التغييرات التي أجريتها على الملف، وسيؤدي الضغط على Ctrl+X إلى إغلاق الملف. nano
محرر.
إضافة وجه ودود إلى Rsync
يمكن للأشخاص الذين لا يشعرون بالراحة مع سطر الأوامر استخدام أحد البرامج العديدة التي تضع واجهة مستخدم رسومية (GUI) على rsync
. هناك مثالان جيدان هما لاكي باك اب و جرسينكيسمح كلا البرنامجين بالعديد من rsync
الخيارات التي سيتم تحديدها من خلال واجهة المستخدم.
ال Grsync
يركز البرنامج على كونه غلافًا مرئيًا لـ rync
. يوفر سهولة الوصول إلى rsync
الخيارات ويضيف فقط مجموعة محدودة من الوظائف الجديدة.
ال luckyBackup
البرنامج هو أكثر بكثير من مجرد غلاف بسيط لـ rsync
. إنه برنامج نسخ احتياطي يستخدم rsync
خلف الكواليس. على سبيل المثال، luckyBackup
يمكنك عمل “لقطات” متعددة من النسخة الاحتياطية. ثم يمكنك “الرجوع” إلى إصدارات الملفات الموجودة في أي من اللقطات.
لتثبيت Grsync
للتثبيت Grsync
في أوبونتو، استخدم هذا الأمر:
sudo apt install grsync
للتثبيت Grsync
في فيدورا، استخدم هذا الأمر:
sudo dnf install grsync
للتثبيت Grsync
في مانارو استخدم هذا الأمر:
sudo pacman -Syu grsync
لتثبيت luckyBackup
للتثبيت luckyBackup
في أوبونتو، استخدم الأمر التالي:
sudo apt install luckybackup
للتثبيت luckyBackup
في فيدورا استخدم الأمر التالي:
sudo dnf install luckybackup
في مانجارو يجب عليك التثبيت luckyBackup
من مستودع مستخدمي Arch (AUR). يمكنك القيام بذلك باستخدام pamac
مدير الحزمة.
لا تخاطر، قم بعمل نسخة احتياطية لبياناتك بشكل متكرر
النسخ الاحتياطية أمر بالغ الأهمية. قم بعمل نسخ احتياطية بشكل متكرر، ونسخ احتياطية في العديد من المواقع، ونسخ احتياطية على وسائط مختلفة. بمجرد إعدادها، rsync
يمكنني أن أفعل كل ذلك من أجلك.