1. المتطلبات الأساسية
لتنفيذ rsync بين النظام المحلي والخادم البعيد، تحتاج إلى:
جهازين: أحدهما محلي (جهاز الكمبيوتر الخاص بك) والآخر خادم لينكس (VPS أو خادم مخصص)
rsyncتم تثبيته على كلا النظامينالوصول عبر SSH بين نظامين (حتى تتمكن من التواصل دون الحاجة إلى إدخال كلمات المرور باستمرار)
مفتاح SSH العام على الخادم الوجهة في الملف
المفاتيح المعتمدةليتم وضعها
2. مفهوم ووظيفة rsync (نسخة متخصصة ومفهومة للمبتدئين والمحترفين)
rsync هي أداة سطر أوامر قوية في Linux تُستخدم لـ المزامنة (Sync) و نقل البيانات يتم استخدامه بين مسارين، سواء كانت هذه المسارات على نفس النظام أو على خادمين منفصلين.
ولكن لماذا يعتبر rsync شائعًا جدًا؟
بسبب ذلك بدلاً من نقل الملفات بأكملها، فإنه ينقل فقط الأجزاء التي تم تغييرها.
كيف يعمل rsync بالضبط؟ (فهم بسيط ودقيق)
عند تشغيل rsync، تقوم الأداة أولاً بما يلي:
هيكل ومحتوى المسارين (على سبيل المثال، المجلد الوجهة والمجلد المصدر) يقارن.
الشيكات ما هي الملفات الجديدة، والتي تم تغييرها، والتي تم حذفها أو لم يتم تغييرها؟.
بدلاً من إرسال الملف بأكمله، فقط جزء من البيانات التي تغيرت التحويلات.
وتسمى هذه التقنية:
خوارزمية نقل دلتا
هذه خوارزمية rsync سريع وفعال للغاية نعم، لأن:
تم تقليل النطاق الترددي المستهلك.
وقت النقل أقصر بكثير.
موارد وحدة المعالجة المركزية على الخادم أقل مشاركة
مثال بسيط لفهم وظيفة rsync بشكل أفضل
لنفترض أن لديك ملفًا بحجم 1 جيجابايت وقد تغير منه 5 ميجابايت فقط.
أدوات شائعة مثل
SCP-1811قاموا بإعادة تحميل الـ 1 جيجابايت بالكامل.لكن يرسل rsync فقط نفس الـ 5 ميجابايت التي تم تغييرها..
هذا يعنى:
مزيد من السرعة
استخدام أقل للإنترنت
ضغط أقل على الخادم
rsync والخوادم: لماذا تعد أفضل أداة لإدارة الخادم؟
عندما تكون على الخادم أو خادم افتراضي خاص عندما تعمل، فأنت تحتاج عادةً إلى:
نقل النسخ الاحتياطية بين خادمين
نقل ملفات الموقع من الخادم الحالي إلى الخادم الجديد
احرص دائمًا على مزامنة المجلدات المهمة (مثل /var/www).
نقل الملفات الكبيرة دون إهدار النطاق الترددي
في كل هذه الحالات، يعد rsync هو الخيار الأفضل لأنه:
نقل آمن باستخدام SSH
يستخدم rsync بروتوكول SSH للنقل، لذا:
البيانات مشفرة.
لا حاجة لفتح منافذ إضافية
تم ضمان أمن الاتصالات.
حذف الملفات الإضافية في الوجهة
مع العلم --يمسح يمكنه إبقاء الوجهة مطابقة تمامًا للمصدر.
ميزة السيرة الذاتية
إذا انقطع اتصال الإنترنت أثناء النقل، فسوف يقوم rsync بنقل بقية الملف، وليس من البداية.
مناسب للأتمتة
يتناسب بسهولة مع cronjobs وينشئ عمليات نسخ احتياطي آلية.
مثال واقعي لفهم أفضل:
إذا كنت تريد مزامنة المسار التالي من الخادم أ إلى الخادم ب:
هذا الأمر:
تغييرات المجلد فقط
/var/wwwالتحويلاتيتم تحديثه في الوجهة.
يضمن النقل الآمن عبر SSH
ملخص بسيط لشخص جديد على rsync:
| ميزة | توضيح |
|---|---|
| التطبيق الرئيسي | نقل البيانات ومزامنة المجلدات |
| الميزة الرئيسية | سيتم نقل التغييرات فقط، وليس الملف بأكمله. |
| حماية | استخدام SSH للتحويلات الآمنة |
| سرعة عالية | بسبب خوارزمية نقل دلتا |
| احترافية وصديقة للخادم | أفضل أداة للنسخ الاحتياطي والهجرة بين VPS |
3. بناء جملة rsync الأساسي
الهيكل العام rsync مثل أدوات الملفات الأخرى مثل SCP-1811 يكون:
مثال محلي بسيط:
إنشاء مجلدين اختباريين على النظام المحلي
تطبيق:
في هذه الحالة، المحتوى فقط
الدليل 1لدير2لقد تم نقله، وليس المجلد نفسه.
خيار -أ يوصى بـ (الأرشيف) لأنه:
يقوم بمزامنة الدليل بشكل متكرر
يحافظ على ملكية الملف ووقت التعديل والأذونات
هام: إذا وضعت "/" في نهاية مسار المصدر، فسيتم مزامنة محتويات الدليل فقط؛ إذا لم تفعل ذلك، فسيتم نقل المجلد الأصلي نفسه.
4. قم بتشغيل معاينة آمنة باستخدام --تشغيل تجريبي
قبل إجراء عمليات حساسة (خاصةً عند استخدام خيارات مثل --يمسح (إذا كنت تستخدم)، فمن الأفضل إجراء تشغيل تجريبي أولاً:
خيار
-نأو--تشغيل تجريبيمحاكاة العمليات دون إجراء أي تغييرات-v(مفصل) يوفر مخرجات مفصلة للملفات التي يتم مزامنتها أو حذفها.
تساعدك هذه المعاينة على رؤية ما سيحدث بالضبط قبل حذف الملفات وتجنب الأخطاء الخطيرة.

5. ادفع واسحب الملفات بين النظام المحلي والخادم
إرسال إلى الخادم (دفع)
لمزامنة دليل محلي مع الخادم:
-أ:الحفاظ على سمات الملف~/الدليل المحلي/:الطريق المحليالمستخدم@الخادم البعيد:عنوان المستخدم والخادم:/المسار/البعيد/:المسار على الخادم
إذا كان "/" في نهاية المصدر، فسيتم إرسال محتويات المجلد فقط؛ وإلا، فسيتم نقل المجلد نفسه أيضًا.
استقبال من الخادم (سحب)
العملية العكسية: المزامنة من الخادم إلى النظام المحلي:
مرة أخرى، من المهم ملاحظة الخط المائل في مسار المصدر (هنا مسار الخادم) لأنه يحدد سلوك المزامنة.
6. خيارات متقدمة rsync
-ز:ضغط البيانات عند الإرسال لتقليل استخدام الشبكة-ص: مزيج من--تقدمو--جزئيالذي يسمح بعرض تقدم عملية النقل والسماح بمواصلة عمليات النقل غير المكتملة
مثال:
--يمسح:حذف الملفات الموجودة في الوجهة ولكنها لم تعد موجودة في المصدر (مناسبة للنسخ المتطابق)--استبعادو--يشمل:تصفية الملفات/المجلدات للتفاعل بشكل أكثر دقة--نسخة احتياطيةو--دليل النسخ الاحتياطي:إنشاء نسخة احتياطية من الملفات المحذوفة في مسار منفصل
7. مزامنة الجدول مع Cron
لتشغيل مزامنة دورية، يمكنك rsync في كرون جدول:
تعديل crontab:
مثال على مهمة cronjob يومية للمزامنة:
يتم تنفيذ هذا الأمر كل يوم في الساعة 3 صباحًا ويقوم بمزامنة الدليل المحلي مع إصدار الخادم.
توصيات مهمة لمهمة cron:
من المسارات المطلقة إلى
rsyncواستخدام الدلائلإعداد تسجيل الدخول باستخدام مفتاح SSH بدون كلمة مرور
حفظ مخرجات cron في ملف سجل أو التعامل مع الأخطاء
8. استكشاف الأخطاء وإصلاحها والمشكلات الشائعة وأفضل الممارسات
بعض المشاكل الشائعة عند الاستخدام rsync وحلولها:
خطأ في مسار المصدر/الوجهة:استخدام
--تشغيل تجريبيللمراجعة التفصيليةالحذف غير المرغوب فيه للملفات:فقط عندما نكون متأكدين تمامًا من
--يمسحدعونا نستخدمأخطاء الأذونات: مع
-أالحفاظ على الملكية والأذونات.مشاكل الأتمتة:استخدم المسارات الكاملة ومصادقة SSH بدون كلمة مرور
خاتمة
rsync إنها أداة قوية ومُحسّنة للغاية لمزامنة البيانات بين الجهاز المحلي والخادم. بفضل خوارزمية نقل دلتا، تُعد هذه الأداة خيارًا منخفض الطاقة وآمنًا ودقيقًا للنسخ الاحتياطي ونقل البيانات وإنشاء بيئات النسخ المتطابق. باستخدام الخيارات المتقدمة، جرّب --تشغيل تجريبي والجدولة مع كرونيمكنك تحسين عملية المزامنة وتأمينها وأتمتتها.









