Anamnesis ، إذا جاز التعبير:
خادم Fujitsu rx300 s6 ، RAID6 من 6 أقراص 1 تيرابايت ، XenServer 6.2 قيد التشغيل ، العديد من الخوادم تدور ، من بينها Ubuntu بعدة كرات ، 3,5 مليون ملف ، 1,5 تيرابايت من البيانات ، كل ذلك ينمو ويتضخم تدريجياً.
المهمة: إعداد نسخ احتياطي للبيانات من خادم الملفات ، جزئيًا يوميًا ، وجزئيًا أسبوعيًا.
لدينا جهاز Windows للنسخ الاحتياطي باستخدام RAID5 (للفقر ، وحدة نظام عادية مع وحدة تحكم RAID مدمجة في الأم) بالإضافة إلى قرص منفصل 2 تيرابايت للنسخ الوسيط للحالة الحالية للملفات. كان من الممكن استخدام أي توزيعة Linux ، لكن هذا الجهاز كان متاحًا بالفعل مع مجموعة raid وترخيص Windows.
التثبيت على خادم النسخ الاحتياطي
نقطة مهمة: عند حفظ مهمة دُفعية ، تأكد من تحديد "إغلاق نافذة المهمة عند الانتهاء" ، وإلا فإن العمليات ستتضاعف وتتضاعف.
نقوم برمي الملفات المؤقتة في الاستثناءات بواسطة القناع: * .dwl، * .dwl2، * .tmp.
يستخدم FreeFileSync الشبكة بشكل جيد للغاية ، والنسخ يتم في عدة تدفقات ، وتصل السرعة إلى 80 ميجابت في الثانية عند نسخ الملفات الكبيرة ، ولم يتم العثور على توصيل في الملفات الصغيرة.
سيتم تنفيذ الأرشفة بالفعل على خادم نسخ احتياطي محلي ، بدلاً من المستخدم مسبقًا
تستخدم أيضا سابقا
لأرشفة المجلدات الضرورية ، نكتب ملف دفعي لـ
تعيين الآن =٪ TIME: ~ 0، -3٪
تعيين الآن =٪ الآن :: =.٪
حدد الآن =٪ الآن: = 0٪
حدد الآن =٪ DATE: ~ -4٪.٪ DATE: ~ 3,2٪.٪ DATE: ~ 0,2٪ _٪ now٪
C: "ملفات البرنامج" 7-Zip7z.exe a -tzip -mx = 1 -mmt = on -mtc = off -ssw D: backupsAll٪ now٪ _10-04.zip E: 10-04
C: "ملفات البرنامج" 7-Zip7z.exe a -tzip -mx = 1 -mmt = on -mtc = off -ssw D: backupsAll٪ now٪ _35-110.zip E: 35-110
C: "ملفات البرنامج" 7-Zip7z.exe a -tzip -mx = 1 -mmt = on -mtc = off -ssw D: backupsAll٪ now٪ _asu.zip E: asu
C: "ملفات البرنامج" 7-Zip7z.exe a -tzip -mx = 1 -mmt = on -mtc = off -ssw D: backupsAll٪ now٪ _director.zip E: المخرج
C: "ملفات البرنامج" 7-Zip7z.exe a -tzip -mx = 1 -mmt = on -mtc = off -ssw D: backupsAll٪ now٪ _gpr.zip E: gpr
C: "ملفات البرنامج" 7-Zip7z.exe a -tzip -mx = 1 -mmt = on -mtc = off -ssw D: backupsAll٪ now٪ _otiz.zip E: otiz
C: "ملفات البرنامج" 7-Zip7z.exe a -tzip -mx = 1 -mmt = on -mtc = off -ssw D: backupsAll٪ now٪ _ps.zip E: ps
C: "ملفات البرنامج" 7-Zip7z.exe a -tzip -mx = 1 -mmt = on -mtc = off -ssw D: backupsAll٪ now٪ _pto.zip E: pto
C: "ملفات البرنامج" 7-Zip7z.exe a -tzip -mx = 1 -mmt = on -mtc = off -ssw D: backupsAll٪ now٪ _rza.zip E: rza
C: "ملفات البرنامج" 7-Zip7z.exe a -tzip -mx = 1 -mmt = on -mtc = off -ssw D: backupsAll٪ now٪ _smeta.zip E: smeta
:: أ - إنشاء أرشيف
:: -tzip أو -t7z - نوع الأرشيف (الرمز البريدي أسرع 1.5-2 مرات)
:: -mx = 1 - نسبة الضغط (الحد الأدنى 1 ، الحد الأقصى 9 x = [0 | 1 | 3 | 5 | 7 | 9])
:: -mmt = on - يقوم بتشغيل multithreading حيث لا يتم تشغيله فجأة
:: -mtc = off - تعطيل الطوابع الزمنية لنظام الملفات (عند الحفظ أو التغيير أو ما إلى ذلك)
:: -ssw - يضغط أيضًا الملفات المفتوحة للكتابة
:: -xr! .Sync * - يستبعد ملفات BtSync المؤقتة من الأرشفة ، مع ترك الملفات الدائمة
يسمح لك إنشاء المجموعة الآن =٪ وما إلى ذلك بحفظ تنسيق الوقت في اسم الملف دون المشاكل التي نشأت عندما كان عدد اليوم أو الشهر أقل من 10 ، أي أننا نستبدل صفر.
التعليق -xr! .Sync * هو بقايا من الأصل
ما يصل إلى 500 جيجا بايت و 700-800 ألف ملف ، لا يزال BTSync يعمل ، متزامنًا بشكل سريع ، لكنه استهلك الكثير من موارد الذاكرة والمعالج في كل من خادم ملفات Ubuntu وعلى نسخة Windows الاحتياطية ، حيث تم إطلاقه من خلال الخدمة ، وكذلك نظام القرص المغتصب ببساطة مع عمليات القراءة والكتابة المستمرة.
على الرغم من أن أرشيفي 7-zip ، فإننا نقوم بأرشفته بتنسيق zip بدلاً من 7z الأصلي ، لأنه أسرع بكثير ، ولا يوجد فرق عمليًا في الضغط مع mx = 1 ، وقد تم التحقق من ذلك من خلال العديد من التجارب.
يتم تنفيذ المحفوظات بدورها.
يتم أيضًا تنظيف المجلد الذي يحتوي على أرشيفات من خلال مهمة مجدولة باستخدام الأداة المساعدة fpurge ، مما يترك المحفوظات لا يزيد عمرها عن أسبوع.
نتيجة لذلك ، لدينا نسخة من ملفات اليوم السابق ، بالإضافة إلى أرشيفات الأسبوع الماضي ، تضع FreeFileSync الملفات المحذوفة في سلة المهملات.
المصدر: www.habr.com