كيفية استبعاد الملفات من Rsync
يعد Rsync أحد الأدوات المساعدة الأكثر فائدة لمشرف الخادم ، ولكنه يقوم بالمزامنة كل شىء بشكل افتراضي ، مما قد يكون مزعجًا إذا أنشأ التطبيق الكثير من الملفات المؤقتة. فيما يلي كيفية استبعاد الملفات عند استخدام rsync.
باستثناء من قائمة في ملف
هذه هي الطريقة المثلى لاستبعاد الملفات والمجلدات ، حيث يمكنك دائمًا تحرير القائمة وتعديلها إذا لزم الأمر. هنا هو بناء الجملة:
رسينك --استبعاد-من = / الطريق / / استبعاد ملف / path / to / source / path / to / dest
الشيء الصعب مع rsync هو أنك تحتاج إلى استخدام مسار نسبي عندما تحاول استبعاد الأشياء ، لأنه عندما يحاول مطابقة الاستثناءات فإنه لن يستخدم الجزء الأول من مسار المباراة ... إنه غريب.
قل ، على سبيل المثال ، إنك تحاول النسخ الاحتياطي / data / web / وأرسلها إلى خادم آخر ، بحيث تستخدم أمرًا مثل rsync -a / data / web / user @ server: / backups / data / web / to make it يحدث ... ولكنك ترغب حقًا في تخطي مزامنة / data / web / cache / folder. عندما ينتهي rsync بالتحقق من قائمة الاستبعاد الخاصة بكل عنصر تتم مزامنته ، فلن يقوم بفحص / data / web / cache / نظرًا لأن الأمر rsync الأصلي الخاص بك يستند إلى / data / web / folder. سيتحقق فقط من "cache /" مقابل القائمة. لذلك ستحتاج إلى وضع "ذاكرة التخزين المؤقت" في القائمة ، وليس المسار الكامل. مثال:
rsync -a --exclude-from = / data / exclusions / data / web / / backups /
الآن لاستبعاد / data / web / cache و / data / web / temp من rsync باستخدام هذا الأمر ، سنقوم بإزالة جزء / data / web / من المسار وسيحتوي الملف / data / exclusions ببساطة على:
ذاكرة التخزين المؤقت * درجة الحرارة *
ستلاحظ أنك أضفت * إلى المسار ، للتأكد من أنه يطابق أي شيء يبدأ بـ "ذاكرة التخزين المؤقت" في البداية. يمكنك استخدام نمط النجوم هذا لأسباب أكثر فائدة إذا أردت - لنفترض أنك تريد استبعاد جميع ملفات .txt من المزامنة. ستبدأ النقش بالنجمة للتأكد من مطابقتها دائمًا ، وإضافة هذا:
*.رسالة قصيرة
يضمن ذلك تخطي هذه الأنواع من الملفات أثناء المزامنة. انها بسيطة جدا وراء ذلك.
باستثناء عنصر واحد
هذه التقنية أقل فائدة بكثير ، ولكن يمكنك استخدامها على الفور إذا كنت بحاجة إلى ذلك. إذا كنت تقوم بإعداد برنامج نصي لاستخدام rsync ، والذي عادة ما تكون ، يجب أن تأخذ دقيقة إضافية للاستبعاد من قائمة الملفات بدلاً من ذلك لجعل الصيانة المستقبلية أسهل. الصيغة متشابهة جدًا:
rsync --exclude = نسبي / مسار / إلى / استبعاد / مصدر / dest
يجب تطبيق نفس المسار النسبي هنا على النحو الوارد أعلاه.