إذا كنت تدير خوادم لينكس أو ببساطة لا ترغب في المخاطرة ببياناتك، فستحتاج عاجلاً أم آجلاً إلى نظام نسخ احتياطي يعمل تلقائيًا ولا يعتمد على تذكرك تشغيله يدويًا. في هذا السياق، يُعدّ rsync بالإضافة إلى cron مزيجًا فعالًا للغاية: مرن وسريع وآمن ومتاح على أي توزيعة تقريبًا.
سنرى في هذا الدليل كيفية إعداد نظام نسخ احتياطي تلقائي باستخدام rsync على نظام لينكس خطوة بخطوةبدءًا من ماهية rsync وكيفية عمله، مرورًا بأمثلة عملية (محلية وعن بُعد)، وصولًا إلى إنشاء البرامج النصية، والجدولة باستخدام cron، وأفضل الممارسات، والأخطاء الشائعة، والسيناريوهات المتقدمة مثل النسخ الاحتياطي التزايدي باستخدام --link-dest أو استخدام خدمة rsyncd.
ماذا ستتعلم في هذا الدليل؟
- المفاهيم الأساسية لـ rsync، ومزاياها مقارنة بالأوامر الأخرى وخياراتها الأكثر فائدة.
- كيفية عمل نسخ احتياطية يدوية وتلقائية باستخدام rsync و cron، سواء محليًا أو عبر SSH.
- أنواع النسخ الاحتياطي (كامل، تفاضلي، تزايدي) مطبقة على rsync مع أمثلة واضحة.
- أفضل الممارسات، وقائمة التحقق، والأخطاء الشائعة استخدم rsync لتجنب فقدان البيانات بسبب سهو ما.
ما هو برنامج rsync ولماذا يُستخدم على نطاق واسع في عمليات النسخ الاحتياطي؟
القيادة rsync هي أداة سطر أوامر مصممة لـ مزامنة الملفات والمجلدات بين موقعينسواء داخل نفس الحاسوب أو بين أجهزة مختلفة عبر الشبكة. على عكس البسيط cp أو scpلا يقوم برنامج rsync بنسخ كل شيء مرة أخرى: فهو يكتشف ما تغير وينقل الاختلافات فقط..
يتحقق هذا السلوك التدريجي بفضل خوارزمية تقارن بين المصدر والوجهة وتحدد كتل البيانات التي يجب إرسالها. وهذا يترجم إلى توفير هائل في الوقت وعرض النطاق التردديخاصة عند العمل مع هياكل مجلدات كبيرة حيث لا تتغير سوى بضعة ملفات كل يوم.
الميزات الرئيسية لـ rsync
يتميز برنامج Rsync بعدد من الميزات التي تجعله مثاليًا لعمل نسخ احتياطية ومزامنة الأنظمة بأكملها. ومن بين أكثرها فائدة ما يلي:
- التزامن التفاضلي والتزايدييتم نقل الأجزاء المعدلة فقط من كل ملف، مما يسمح بإجراء نسخ احتياطية متكررة دون إثقال الشبكة.
- التشغيل محليًا أو عن بعديمكنك استخدام rsync بين أدلة الفريق نفسهأو بين الخوادم عبر SSH أو من خلال برنامج rsync الخاص (
rsyncd). - الضغط أثناء النقل: مع الخيار
-zيتم إرسال البيانات مضغوطة، وهو أمر مفيد للغاية إذا كان الاتصال بطيئًا. - حفظ البيانات الوصفية:يبقي الأذونات، والمالكون، والمجموعات، والطوابع الزمنية، والروابط الرمزية، والملفات الخاصة، وهو أمر بالغ الأهمية في بيئات الخوادم.
- وضع التشغيل الجاف: مع
--dry-runيمكنك أن ترى بالضبط ما سيفعله rsync دون لمس أي شيء، وهو أمر مثالي لتجنب الكوارث. - استئناف العمل وقوة الأداءفي حال انقطاع عملية النقل، يستأنف rsync عمله دون الحاجة إلى البدء من الصفرويتخطى الملفات التي تمت مزامنتها بالفعل.
- دعم الاستثناءات والفلاتر: يسمح لك باستبعاد الملفات حسب الأنماط والأحجام والمسارات المحددة وما إلى ذلك.
- تكامل SSH: يرتدي
-e sshأو عن طريق تحديد وجهة بعيدة، لديك التشفير الآمن والمصادقة دون اختراع أي شيء غريب.
بناء الجملة الأساسي والخيارات الأكثر استخدامًا
الصيغة العامة للأمر واضحة تماماً: أولاً الخيارات، ثم نقطة الانطلاق، وأخيراً الوجهةكل شيء تقريباً مبني على هذا الأساس.
الهيكل النموذجي هو:
rsync origen destino
بالنسبة للنسخ البعيدة، فإن الصيغة الأكثر شيوعًا هي:
rsync /ruta/local usuario@servidor:/ruta/remota
بعض الخيارات التي تستحق الحفظ لأنك ستستخدمها مرارًا وتكرارًا لها أهمية خاصة لأي مسؤول:
-a: وضع الملف. فهو يجمع عدة خيارات (-r,-l,-p,-t,-g,-o,-D) للحفاظ على التكرار، والأذونات، والمالكين، والمجموعات، والأوقات، والملفات الخاصة.-v: إخراج "مفصل". أظهر ما يحدث أثناء النقل.-z: يُفعّل ضغط البيانات أثناء الإرسال لـ تقليل استهلاك النطاق الترددي.--deleteيجعل القدر يصبح نسخة طبق الأصل من الأصل، ومحو ما لم يعد موجوداً في الأصل من الوجهة.--exclude: تسمح حذف ملفات أو مجلدات محددة باستخدام الأنماط (--exclude='*.log'، على سبيل المثال).--dry-run: يحاكي التنفيذ. لا يقوم بنسخ أو حذف أي شيء.إنها لا تعلم سوى الإجراءات التي ستتخذها.--progress: يعرض تقدم الملفات الكبيرة في الوقت الفعلي، وهو أمر ملائم للغاية للمراقبة.-e ssh: إجبار على الاستخدام SSH كوسيلة نقل عندما لا يتم استنتاج ذلك تلقائيًا.--log-file: يحفظ المخرجات التفصيلية في سجل، وهو أمر مفيد لـ التدقيق والتشخيصخاصة إذا قمت باستدعاء rsync من cron.
تثبيت واختبار rsync على نظام لينكس
في معظم التوزيعات الحديثة، يأتي برنامج rsync مثبتًا مسبقًا، ولكن من الجيد التحقق قبل إعداد نظام النسخ الاحتياطي الخاص بك. التحقق من الإصدار بسيط للغاية، كل ما عليك فعله هو تشغيل أمر ما. من خلال الطرفية بصلاحيات المستخدم العادية:
rsync --version
إذا استجاب النظام برقم الإصدار، فأنت جاهز تمامًا. أما إذا لم يكن مثبتًا بالفعل، فإن طريقة إضافته تختلف قليلاً حسب التوزيعة، لكن العملية بسيطة للغاية:
- في دبيان وأوبونتو ومشتقاتها يمكنك استخدام APT لتثبيت الحزمة:
sudo apt install rsync. - على أنظمة Red Hat، وCentOS، وRocky Linux، وAlmaLinux الشيء المعتاد هو استخدام DNF:
sudo dnf install rsync.
كما توضح بعض الأدلة الأكثر تقدماً كيفية تفعيلها خدمة rsyncd باستخدام نظام systemd، نسخ الوحدة وتعديلها /lib/systemd/system/rsync.service a /etc/systemd/system/rsync.service وإعادة تشغيل الخدمة؛ يُستخدم هذا عندما تريد تتصل أجهزة الكمبيوتر الأخرى بخادم النسخ الاحتياطي الخاص بك باستخدام برنامج rsync. بدلاً من SSH.
النسخ الاحتياطية المحلية باستخدام rsync
تتضمن الحالة الأساسية إنشاء نسخ احتياطي من مجلد إلى آخر داخل نفس الجهازإنها طريقة بسيطة وسريعة للبدء في العمل مع rsync دون الانشغال بمفاتيح SSH أو جدران الحماية.
تخيل أنك تريد حماية مستندات المستخدم الخاصة بك عن طريق النسخ /home/usuario/Documentos إلى قرص مثبت على /mnt/backupسيكون الأمر بسيطاً على النحو التالي:
rsync -av /home/usuario/Documentos/ /mnt/backup/Documentos/
في هذا المثال، rsync يقوم بفحص جميع محتويات المستندات ونسخها إلى محرك الأقراص الاحتياطي.مع الحفاظ على الأذونات وبنية الدليل والطوابع الزمنية، في المرة القادمة التي تقوم فيها بتشغيله، سينقل التغييرات فقط، مما يجعل هذا الأسلوب طريقة "شبه تراكمية" فعالة من حيث التكلفة.

أنواع النسخ الاحتياطية باستخدام rsync
باستخدام rsync، يمكنك تطبيق استراتيجيات النسخ الاحتياطي الكلاسيكية الثلاث دون الحاجة إلى أدوات خارجية معقدة للغاية. لكل طريقة استخداماتها الخاصة. من المهم فهم ما يفعله كل شخص. قبل دمجها في سياسة النسخ الخاصة بك.
نسخة كاملة
النسخة الكاملة تعني نسخ جميع الملفات من المصدر إلى الوجهةبما في ذلك المجلدات الفرعية. وللقيام بذلك، استخدم ببساطة وضع الملف:
rsync -a /ruta/al/directorio/fuente/ /ruta/al/directorio/destino/
يمنحك هذا الخيار نسخة طبق الأصل من دليل المصدر. إنه مثالي لأن النسخة الاحتياطية الأولى أو عندما تريد لقطة مستقلة لا تعتمد على النسخ السابقة.
نسخة تفاضلية
عندما نتحدث عن النسخ التفاضلي باستخدام rsync، فإننا نعني عادةً احتفظ بنسخة تعكس الحالة الحالية للمصدر، بما في ذلك عمليات الحذف، دون الحاجة إلى نقل كل شيء في كل مرة.
وللقيام بذلك، يتم دمج خيار الملف مع --delete:
rsync -a --delete /ruta/al/directorio/fuente/ /ruta/al/directorio/destino/
مع هذا التكوين لـ rsync سيقوم البرنامج بنسخ الملفات الجديدة أو المعدلة فقط، وحذف أي شيء لم يعد موجودًا من المصدر من الوجهة.إنها أداة قوية للغاية للحفاظ على نسخة احتياطية، ولكن عليك استخدامها بحذر لأنك قد تفقد الملفات إذا ارتكبت خطأ في المسارات.
نسخة متزايدة مع روابط صلبة
للحصول على نظام نسخ احتياطي تزايدي "حقيقي"، حيث يكون لديك كل يوم دليل منفصل يبدو كنسخة كاملة ولكن دون تكرار الملفات، يتم استخدام الخيار --link-destتعتمد هذه التقنية على روابط صلبة باتجاه نسخة سابقة.
عادةً ما تكون المكالمة على النحو التالي:
rsync -a --link-dest=/ruta/a/la/copiaprevia /ruta/al/directorio/fuente/ /ruta/al/directorio/destino_nuevo/
في هذا السيناريو، يتم ربط الملفات التي لم تتغير من النسخة السابقة بدلاً من نسخها مرة أخرى، بحيث يمكنك توفير مساحة على القرص مع الاحتفاظ بنسخ "كاملة" حسب التاريخإنه حل يستخدم على نطاق واسع على الخوادم للحفاظ على البيانات التاريخية التي تمتد لعدة أيام أو أسابيع.
النسخ الاحتياطي عن بُعد باستخدام rsync و SSH
لا بأس بنسخ الملفات على نفس الكمبيوتر، ولكن إذا تعطل القرص الصلب، فلن يفيدك ذلك كثيرًا. والحل الأمثل هو توجد النسخ على جهاز آخر أو حتى في مركز بيانات آخر.وهنا يبرز دور rsync حقاً عند دمجه مع SSH.
لنفترض أنك تحفظ بياناتك المهمة في /var/backups وتريد إرسالها إلى خادم احتياطي بعنوان IP 192.168.1.50 والمستخدم backupمثال على أمر نموذجي:
rsync -avz /var/backups/ backup@192.168.1.50:/mnt/servidor_backups/
في استدعاء rsync هذا، يتم إنشاء جلسة SSH مع الخادم البعيد و ينقل المعلومات المضغوطة (إذا كنت تفضل خيارات شحن آمنة أخرى مثل SFTP، فيرجى استشارة المختصين) تأمين عمليات نقل الملفات عبر بروتوكول FTP/SFTP باستخدام FileZillaمزيج من -a y -z يضمن نسخًا دقيقة مع استخدام معقول للشبكة.
إذا كان ما تريده هو نقل الملفات من الخادم البعيد إلى الكمبيوتر المحليما عليك سوى عكس ترتيب المسارات:
rsync -avz backup@192.168.1.50:/mnt/servidor_backups/ /var/backups/
قم بتهيئة الوصول بدون كلمة مرور باستخدام مفاتيح SSH
لكي تتم أتمتة عملية rsync دون تدخل بشري، من الضروري أن لا يتطلب الوصول إلى الخادم البعيد كلمة مرورالطريقة القياسية لتحقيق ذلك هي عن طريق تكوين مفاتيح SSH.
بشكل عام، تكون العملية كما يلي:
- على الجهاز المصدر، قم بإنشاء زوج مفاتيح (إذا لم يكن لديك واحد بالفعل):
ssh-keygen -t ed25519 - انسخ المفتاح العام إلى خادم النسخ الاحتياطي:
ssh-copy-id backup@192.168.1.50 - تؤكد أنه يمكنك تسجيل الدخول بدون كلمة مرور:
ssh backup@192.168.1.50
من تلك اللحظة فصاعدًا، سيتمكن rsync من استخدم بروتوكول SSH مع مصادقة المفتاح العام وتشغيلها من خلال cron دون توقف أثناء انتظارك لكتابة أي شيء على لوحة المفاتيح.
استخدام rsync مع برنامج rsyncd الخفي
على الرغم من أن الغالبية العظمى من السيناريوهات تُحل بشكل مثالي باستخدام SSH، إلا أن rsync لديه أيضًا وضع الشيطان، والذي يستمع على منفذه الخاص ويقدم "وحدات" تم تكوينها في ملف تكوين مخصص.
على خادم نموذجي، الملف /etc/rsyncd.conf قد يكون له هيكل مشابه لهذا:
pid file = /var/run/rsyncd.pid
uid = backup-user
gid = backup-user
read only = yes
المسار = /path/to/backup
القائمة = نعم
مستخدمو المصادقة = مستخدم النسخ الاحتياطي
ملف كلمات المرور السرية = /etc/rsyncd.passwd
بالإضافة إلى ذلك، يتم تعريف ملف كلمة المرور في /etc/rsyncd.passwd بمحتوى كهذا:
backup-user:tu-pass
وتتم حماية الأذونات بواسطة:
chmod 0600 /etc/rsyncd.passwd
باستخدام هذا التكوين، يمكنك من الجهاز الذي يقوم بعملية النسخ الاحتياطي تشغيل أمر كهذا:
rsync -a --password-file=/etc/rsyncd.passwd backup-user@ip-servidor::data /ruta/destino/$(date +%Y-%m-%d)/
تُعد هذه التقنية مفيدة بشكل خاص عندما تريد مركزة النسخ الاحتياطية من أجهزة كمبيوتر متعددة إلى خادم نسخ احتياطي مخصص دون تعريض SSH للخطر أو عندما تحتاج إلى تحكم دقيق للغاية فيما يمكن قراءته أو تعديله.
جدولة النسخ الاحتياطية التلقائية باستخدام cron
بعد أن تقرر أي أمر من أوامر rsync تريد استخدامه، فإن الخطوة التالية هي قم بأتمتة العملية بحيث يتم تشغيلها بشكل دوري دون الحاجة إلى القلق. يُعدّ Cron النظام القياسي في لينكس لهذا النوع من المهام.
لتعديل مهام cron الخاصة بالمستخدم الحالي، استخدم ما يلي:
crontab -e
يُحدد كل سطر في الملف مهمةً بتنسيق زمني مُحدد والأمر المطلوب تنفيذه. على سبيل المثال، لتشغيل rsync يوميًا في الساعة الثانية صباحًا، يمكنك تضمين ما يلي:
0 2 * * * rsync -avz /var/backups/ backup@192.168.1.50:/mnt/servidor_backups/
تمثل هذه الحقول الدقيقة، والساعة، ويوم الشهر، والشهر، ويوم الأسبوع، بهذا الترتيب. في هذه الحالة، سيتم إصدار الأمر في تمام الساعة الثانية صباحاً كل يوممن المهم أن يعمل الأمر الذي تضعه في cron بشكل صحيح إذا قمت بتشغيله يدويًا أولاً، وأن يتم حل مصادقة مفتاح SSH بالفعل.
في سيناريوهات أخرى، يُفضل استخدام rsync بدلاً من استدعائه مباشرةً من cron. قم بتغليف المنطق في نص برمجيعلى سبيل المثال /usr/local/sbin/rsync_dirsاجعله قابلاً للتنفيذ باستخدام chmod +x ثم قم بتشغيل البرنامج النصي من خلال cron:
00 23 * * * /usr/local/sbin/rsync_dirs
هذا النهج يسمح لك مزامنة عدة مجلدات، وإدخالات السجل، ومعالجة الأخطاء بطريقة أكثر تنظيماً ضمن النص نفسه.
استبعاد الملفات، وتحديد الأحجام، وخيارات أخرى مفيدة
في كثير من الحالات، لا يكون من المنطقي التخلص من كل شيء تمامًا؛ غالبًا ما سترغب في تجاهل الملفات المؤقتة، أو سجلات التدوير، أو ذاكرة التخزين المؤقت. فهي لا تشغل سوى مساحة وتبطئ عمليات النسخ.
لاستبعاد الملفات أو المجلدات بالاسم أو النمط، استخدم الخيار --excludeومن الأمثلة النموذجية جداً ما يلي:
rsync -av --exclude='*.tmp' /proyecto/ /backup/proyecto/
إذا كان ما تبحث عنه هو تصفية حسب الحجميحتوي rsync على --max-size y --min-sizeوالتي يمكنك استخدامها لتحديد أنه يجب نسخ الملفات التي تزيد أو تقل عن حد معين فقط، على سبيل المثال:
rsync -av --min-size=10M --max-size=100M /origen/ /destino/
وهناك أيضاً إمكانية تنفيذ تحويلات ترميز الأحرف أثناء النسخ مع الخيار --iconvهذا مفيد عندما تقوم بالمزامنة بين أنظمة ذات تكوينات مختلفة (مثل جهاز Mac مع UTF8-MAC ونظام Linux مع UTF-8 القياسي) ولا تريد إفساد الأمور باستخدام علامات التشكيل أو الأحرف الخاصة.
أفضل الممارسات عند استخدام rsync للنسخ الاحتياطي
برنامج Rsync أشبه بالمشرط: دقيق للغاية، ولكن استخدامه بشكل خاطئ قد يُسبب أضرارًا جسيمة. لذلك يُنصح باتباع بعض التوصيات لـ تجنب المفاجآت غير السارة عندما تقوم بأتمتة عمليات النسخ الاحتياطي.
- قبل أي تغييرات جوهرية، استخدم دائمًا
--dry-runللتأكد من أن المسارات والخيارات تؤدي ما تتوقعه. - تحقق من الأذونات والمالكين في كل من المصدر والوجهة. إذا كانت أذونات القراءة أو الكتابة مفقودة، فسيفشل برنامج rsync بصمت في بعض الملفات إذا لم تتحقق من المخرجات.
- عند استخدام
--delete, تأكد من أن الوجهة هي نسخة احتياطية بالفعل وليس مجلدًا يحتوي على بيانات فريدة؛ إذا اخترت المسار الخاطئ، فسوف تحذفه. - سجّل إنجاز مهامك لدى
--log-fileوقم بفحص السجلات بشكل دوري للكشف عن أخطاء متكررة أو ملفات لا يتم نسخها بشكل صحيح. - كلما استطعت ، احتفظ بعدة نسخ في أماكن مختلفة (القرص المحلي، الخادم البعيد، السحابة) وتدوير النسخ الاحتياطية القديمة.
- ويضيف ذلك بالنسبة للبيانات الحساسة بشكل خاص. تشفير إضافي (على سبيل المثال باستخدام GPG) على ملفات النسخ الاحتياطي، بالإضافة إلى التشفير أثناء النقل الذي يوفره SSH.
قائمة مراجعة سريعة للإعداد والصيانة
ولتجنب الضياع في التفاصيل، من العملي جدًا أن يكون لديك قائمة تحقق صغيرة لمساعدتك في التحقق من صحة نظام النسخ الاحتياطي الخاص بك سواء عند تنفيذه أو بشكل دوري.
- تم التحقق من المستخدم والأذونات في المصدر والوجهة، بما في ذلك إمكانية الوصول للقراءة إلى جميع البيانات وإمكانية الوصول للكتابة إلى موقع النسخة.
- اختبار يدوي حديث من خلال أمر rsync أو برنامج النسخ الاحتياطي، مع التأكد من عدم ظهور أي أخطاء في المخرجات.
- مساحة خالية كافية في الجهاز أو الحجم المستهدف، مع مراقبة أساسية لتوقع عمليات التعبئة.
- تم اختبار كرونتاب والمهام النشطة، بدون أخطاء في بناء الجملة أو مسارات نسبية مشكوك فيها.
- تمت مراجعة سجلات rsync بشكل منتظم، يتم التحقق من حالات فشل الاتصال، أو رفض الأذونات، أو المسارات التي لا يمكن الوصول إليها.
- اختبارات الترميم بمجرد القيام بذلك، لن تتمكن فقط من رؤية أن البيانات قد تم نسخها، بل ستتمكن أيضًا من إعادتها إلى بيئة الإنتاج.
الأخطاء الشائعة وكيفية تجنبها
مهما بدت الأوامر بسيطة، إلا أن هناك عددًا من الأخطاء الشائعة التي تتكرر مرارًا وتكرارًا عندما يبدأ الناس في استخدام rsync للنسخ الاحتياطي التلقائي.
تم رفض الأذونات
واحدة من المشاكل الأكثر شيوعا هي أن لا يمكن للمستخدم الذي يقوم بتشغيل rsync القراءة أو الكتابة إلى أي من المساراتيتجلى هذا الأمر من خلال رسائل "تم رفض الإذن" أو بشكل مباشر من خلال الملفات التي لا تكتمل عملية نسخها.
يتضمن الحل مراجعة الملاك والتصاريح مع ls -lاضبط حسب الحاجة مع chown y chmodوإذا لزم الأمر، قم بتشغيل rsync باستخدام sudo عندما يتعلق الأمر بمسارات النظام التي لا يمكن التعامل معها إلا من قبل المسؤول.
الخلط بين المسارات المطلقة والنسبية
ومن الأخطاء الشائعة الأخرى الخلط بين المسارات النسبية مقابل المسارات المطلقة وينتهي الأمر بنسخ الملفات إلى أماكن خاطئة. من الممارسات الجيدة استخدام المسارات المطلقة (التي تبدأ بـ /) في البرامج النصية وفي cron، لتجنب الاعتماد على الدليل الحالي.
إنه أيضًا مهم جدًا انتبه إلى الأشرطة النهائية في نقطة المنشأ والوجهة: /origen y /origen/ لا تعني هذه الأمور نفس الشيء تمامًا بالنسبة لـ rsync، وهذا يمكن أن يحدد ما إذا كان المحتوى سيدخل أم سيتم إنشاء دليل إضافي في الوجهة.
الاستخدام غير الصحيح لـ "-delete"
الخيار --delete إنها إحدى أعظم نقاط قوة rsync، ولكنها أيضاً إحدى أكبر عيوبه. إذا تم دمجها بشكل غير صحيح، فقد حذف البيانات القيّمة من الوجهة التي لم تكن تنوي لمسها.
التوصية حاول دائماً مع --dry-run قبل تقديم --delete في بيئة إنتاجية، وإذا أمكن، ابدأ بتطبيقه على نسخ تجريبية لمعرفة ما الذي سيزيله بالضبط.
اختيار الخيار الخاطئ بين خياري –ignore-existing و –update
عند العمل مع مجلدات تتغير في كل من المصدر والوجهة، يجب تحديد كيفية تعامل rsync مع التعارضات. الخيارات --ignore-existing y --update لها فروق دقيقة مهمة:
--ignore-existingوهذا يضمن أن برنامج rsync لا يلمس الملفات الموجودة بالفعل في الوجهة، حتى لو كان المصدر أحدث.--updateلا يتم النسخ إلا إذا كان الملف المصدر غير موجود في الوجهة أو كان أحدث من الملف الموجود هناك.
إن اختيار أحدهما دون تفكير قد يؤدي إلى لا يتم تحديث الملفات الهامة، أو على العكس من ذلك، يتم استبدال التغييرات التي كنت ترغب في الاحتفاظ بها..
البدائل والأدوات التكميلية
على الرغم من أن rsync يغطي معظم سيناريوهات النسخ والمزامنة، إلا أن هناك حالات محددة حيث قد تكون هناك أدوات أخرى أكثر ملاءمة أو تكمل عملها.
- اللجنة الدائمةالطريقة الكلاسيكية لنقل الملفات عبر SSH. إنها أبسط، ولكن لا يقوم بعملية مزامنة ذكية. ولا يدعم النسخ التزايدية، لذا فهو غير كافٍ لعمليات النسخ الاحتياطي المتكررة.
- rcloneمصمم للعمل مع التخزين السحابي (S3، جوجل درايف، دروب بوكس، إلخ). يوفر وظائف مزامنة على غرار rsync، ولكنها مُكيّفة مع هذه الخدمات.
- انسجام: موجهة نحو تزامن ثنائي الاتجاهمفيد عندما يمكن أن تحدث تغييرات في كل من المصدر والوجهة وتريد الحفاظ على اتساقها.
- rsnapshot o lsyncd: المشاريع التي تعتمد على rsync لتقديم، على التوالي، إدارة اللقطات المتقدمة e تحديث شبه فوري من الأدلة.
مع وضع كل هذا في الاعتبار، يصبح rsync بمثابة أداة متعددة الاستخدامات لعمليات النسخ الاحتياطي الخاصة بك: يتيح لك القيام بكل شيء بدءًا من إنشاء نسخة احتياطية بسيطة لمجلد المستخدم الخاص بك وحتى إعداد نظام تزايدي مع سجل يومي على خادم بعيد.يشمل ذلك مزامنة خادم الويب، والنسخ الاحتياطية التي يتم تصفيتها حسب الحجم، واستبعاد الملفات المؤقتة؛ إذا قمت بدمجها مع cron ومفاتيح SSH وممارسات التحقق والاستعادة الجيدة، فسيكون لديك حل قوي يوفر لك الوقت وعرض النطاق الترددي وأكثر من مجرد خوف واحد عندما يحدث خطأ ما. شارك هذا الدليل وسيتعلم المزيد من المستخدمين كيفية أتمتة عمليات النسخ الاحتياطي على نظام لينكس باستخدام أوامر RSTNC.