هل سبق لك القلق بشأن فقدان بياناتك ، أو تعبت من إجراء النسخ الاحتياطي اليدوي يوميًا أو أسبوعيًا؟ استخدم ال rsync
أمر ومزامنة ملفاتك المحلية تلقائيًا إلى خادم بعيد بقدر ما تريد دون تدخل يدوي. يرجى ملاحظة أن هذا الدليل يتطلب الوصول إلى خادم Linux بعيد (على سبيل المثال. AWS) ، وهو مكتوب تحت Ubuntu 20.04 على الرغم من أن أي توزيعة Linux يجب أن تعمل بشكل جيد.
قم بتثبيت rsync
قبل أي شيء ، تحقق مما إذا كان أم لا rsync
تم تنصيبه. على كل من جهاز الكمبيوتر المحلي وخادم الويب ، قم بتشغيل الأمر التالي:
rsync - الإصدار
إذا حصلت على إصدار rsync الحالي في المقابل ، فأنت جاهز تمامًا للقسم التالي. خلاف ذلك ، إذا تلقيت ملف القيادة لم يتم العثور خطأ ، يمكنك تثبيت rsync
بهذا الأمر:
sudo apt-get -y قم بتثبيت rsync
توليد مفتاح SSH
سوف نستخدم ملف مفتاح SSH لمصادقة الاتصال بين جهاز الكمبيوتر المحلي الخاص بنا والخادم البعيد. لإنشاء مفتاح SSH جديد على جهاز الكمبيوتر المحلي الخاص بك داخل المحطة ، قم بتشغيل الأمر:
هل تحتاج إلى الوصول إلى جهاز كمبيوتر أو خادم Linux الخاص بك عن بُعد؟ إليك كيفية إعداد وتهيئة SSH على أنظمة Linux و Windows والأجهزة المحمولة.
ssh-keygen -t rsa -b 4096 -f ~ / .ssh / rsync.key
عند مطالبتك بكلمة مرور ، اتركها فارغة واضغط على مفتاح Enter مرتين. سيؤدي هذا إلى إنشاء ملفين جديدين داخل ملف ~ / .ssh /
اسم الدليل rsync.key
وهو المفتاح الخاص و rsync.key.pub
، المفتاح العمومي.
إعداد الخادم البعيد
على الرغم من أنه ليس مطلوبًا ، سنقوم بإنشاء ملف مستخدم جديد على الخادم البعيد لاتصالات rsync ولتخزين جميع ملفات النسخ الاحتياطي. قم بتسجيل الدخول إلى الخادم البعيد عبر SSH وقم بتشغيل هذا الأمر:
sudo useradd -m rsync
يستخدم المثال أعلاه اسم المستخدم rsync، ولكن يمكنك تغييره إلى أي شيء تريده. ال م
يخبر الخيار ببساطة Linux بإنشاء دليل رئيسي لمستخدمنا الجديد.
للسماح لجهاز الكمبيوتر المحلي الخاص بك بالمصادقة ، يجب نسخ مفتاح SSH العام الذي تم إنشاؤه في القسم السابق إلى الخادم البعيد. افتح ال /~.ssh/rsync.key.pub
ملف في ملف محرر النص وسترى سطرًا كبيرًا يشبه شيئًا ما.
ssh-rsa user @ host
هذا الخط الطويل هو مفتاح SSH العام. انسخه إلى الحافظة الخاصة بك ، وداخل الخادم البعيد ، قم بتشغيل هذه الأوامر:
sudo su rsync
mkdir -m 0700 $ الصفحة الرئيسية / .ssh
صدى "ssh-rsa AAAAB... user @ host "> $ HOME / .ssh / author_keys
chmod 0644 $ HOME / .ssh / author_keys
في الأمر الأخير الثاني ، استبدل النص الموجود بين علامات الاقتباس بخط مفتاح SSH العام الطويل. هذا كل شيء ، سيتمكن الكمبيوتر المحلي الآن من المصادقة مع خادمك البعيد.
تكوين ملف تكوين ssh
من أجل البساطة ، أضف إدخالًا إلى ملف ~ / .ssh / config
ملف على جهاز الكمبيوتر المحلي الخاص بك للاتصال بسهولة بالخادم البعيد. افتح الملف على جهاز الكمبيوتر المحلي الخاص بك باستخدام الأمر.
nano $ HOME / .ssh / config
داخل الملف ، أضف إدخالًا للخادم البعيد مثل:
المضيف backup_server
اسم المضيف 192.168.0.24
مستخدم rsync
IdentityFile ~ / .ssh / rsync
قم بتغيير اسم المضيف إلى عنوان IP الخاص بخادمك البعيد ، وإذا استخدمت اسم مستخدم آخر بخلاف "rsync" ، فقم بتغييره أيضًا. يمكنك استخدام أي شيء تريده للمضيف ، ولكن في هذا المثال ، تم استخدام "backup_server". احفظ وأغلق الملف بالضغط على Ctrl + X متبوعًا بمفتاحي "Y" و Enter.
اختبر اتصال SSH بالخادم البعيد باستخدام الأمر.
ssh backup_server
بافتراض أن كل شيء تم إعداده بشكل صحيح ، يجب الآن تسجيل الدخول إلى خادمك البعيد عبر SSH. أغلق الاتصال بالأمر.
خروج
مزامنة ملفاتك
الآن اختبر ملف rsync
، على سبيل المثال ، لمزامنة دليل المستندات على جهاز الكمبيوتر المحلي الخاص بك ، قم بتشغيل الأمر:
rsync -avz --progress ~ / Documents / backup_server: ~ / Documents
أول ظهور لـ ~ / المستندات /
يحدد الملف أو الدليل المحلي للمزامنة ، خادم النسخ الاحتياطي
يتوافق مع الإدخال المضاف إلى ~ / .ssh / config
الملف والنهاية : ~ / المستندات
يحدد ببساطة لتحميل كل شيء في دليل / Documents للخادم البعيد المتعلق بالدليل الرئيسي.
قم بتسجيل الدخول إلى الخادم البعيد ، وسترى دليل مستندات جديدًا متزامنًا مع دليل الكمبيوتر المحلي لديك. في كل مرة تقوم فيها بتشغيل الأمر أعلاه ، سيتم تحميل الملفات التي تم تعديلها منذ آخر مرة فقط ، لذلك لا تقوم باستمرار بتحميل محتويات الدليل بالكامل.
أتمتة عبر Crontab
الآن بعد أن تم اختبار كل شيء ويعمل بشكل صحيح ، يمكننا بسهولة أتمتة العملية بأكملها عن طريق إضافة وظيفة crontab إلى جهاز الكمبيوتر المحلي الخاص بنا. لمزامنة مجلدك المحلي تلقائيًا مع الخادم البعيد كل 15 دقيقة ، قم بتشغيل الأمر داخل Terminal.
(crontab -l ؛ صدى "* / 15 * * * * rsync -avz --progress ~ / Documents / backup_server: ~ / Documents> / dev / null 2> & 1"؛) | كرونتاب
قد تحصل على رسالة "no crontab for user" ، ويمكنك تجاهلها فقط. غير ال وثائق
الدليل إلى كل ما ترغب في نسخه احتياطيًا ، ولكن تأكد من ترك شرطة مائلة للأدلة وإلا فلن يقوموا بالنسخ الاحتياطي بشكل صحيح.
تحقق للتأكد من إضافة وظيفة crontab بنجاح باستخدام الأمر.
كرونتاب -l
إذا رأيت وظيفة crontab التي تمت إضافتها للتو ، فكل شيء في مكانه الصحيح. انتظر 15 دقيقة ، وتحقق من الخادم البعيد ، ويجب أن تكون جميع الملفات الضرورية هناك. بدءًا من الآن ، سيتم تلقائيًا تحميل جميع التغييرات التي تم إجراؤها على ملفاتك إلى الخادم البعيد كل 15 دقيقة.
تنزيل من خادم بعيد
يمكنك أيضًا استخدام ملفات rsync
لتنزيل الملفات من الخادم البعيد ومزامنتها مع جهاز الكمبيوتر المحلي. باستخدام مثال دليل المستندات / أعلاه ، قم بتشغيل الأمر داخل المحطة الطرفية:
rsync -chavzP backup_server: ~ / Documents / ~ / Documents
ال ~. / المستندات
يجب أن يكون الدليل الموجود على جهاز الكمبيوتر المحلي الخاص بك الآن صورة معكوسة للخادم البعيد.
تضمين واستبعاد الأنماط
إذا احتجت في أي وقت إلى مزامنة الملفات التي تطابق نمطًا معينًا فقط ، مثل إنهاء بـ .لغة البرمجة
يمكنك استعمال ال --يشمل
نمط. داخل المحطة تشغيل الأمر.
rsync -avz - تتضمن "* .html" - التقدم ~ / mysite / backup_server: ~ / public_html
تحقق من الخادم البعيد ، وسترى فقط الملفات ذات الامتداد .html من الدليل المحلي / mysite / تم تحميلها في الدليل / public_html / remote. في نفس الوقت ، يمكنك أيضًا مزامنة كل شيء باستثناء ملفات معينة بامتداد - استثناء
اختيار. على سبيل المثال ، سيقوم الأمر التالي بمزامنة جميع الملفات باستثناء تلك التي تحتوي على ملف .رسالة قصيرة
تمديد.
rsync -avz - استبعاد "* .txt" - التقدم ~ / mysite / backup_server: ~ / public_html
مزامنة دليلين محليين
إذا لزم الأمر ، يمكنك أيضًا مزامنة دليلين محليين مع الأمر.
rsync -zvr ~ / source / directory ~ / destination / directory
يعمل هذا الأمر تمامًا كما هو الحال عند المزامنة مع خادم بعيد ، والفرق الوحيد هو أنه دليلين محليين.
راحة سهلة
يمكنك الآن أن تتنفس الصعداء مع العلم أن فرصك في فقدان البيانات أصبحت الآن أقل بكثير. في هذه المقالة تعلمت ماذا rsync
هو كيفية إنشاء مفتاح SSH وتثبيته ، وتحديد خادم داخل ~ ./. ssh / config
file ، ومزامنة دليل محلي وبعيد ، وأتمتة العملية بأكملها عبر crontab. من الآن فصاعدًا ، ستتم مزامنة جميع الملفات الضرورية دائمًا مع خادمك البعيد مع تأخير لمدة 15 دقيقة فقط.
هل تحتاج إلى استنساخ محرك الأقراص الثابتة أو قسم Linux الخاص بك؟ استخدم إحدى أدوات استنساخ محرك الأقراص هذه لاستنساخ قرص Linux الخاص بك.
- لينكس
- النسخ الاحتياطي للبيانات
- لينكس
- احتياطية سحابة
- شبكة منزلية
اشترك في نشرتنا الإخبارية
انضم إلى النشرة الإخبارية لدينا للحصول على نصائح تقنية ومراجعات وكتب إلكترونية مجانية وصفقات حصرية!
خطوة أخرى أيضا…!
يرجى تأكيد عنوان بريدك الإلكتروني في البريد الإلكتروني الذي أرسلناه لك للتو.