يقرأ اختبار المستودع بشكل مستقل من مصدر صغير ومستقر، ثم يختبر مسارات المصدر المشتبه بها في مستودع جديد مؤقت وقابل للتخلص منه.
يصبح القرار مهمًا عندما تتوقف النسخة الاحتياطية بسبب أخطاء في القراءة أو المجموع الاختباري أو الأذونات أو الحزم أو الفهرس. والحالتان المتنافستان هما تلف المستودع أو الوجهة، وأخطاء قراءة الملفات المصدرية أو أذوناتها أو تغيّرها. ابدأ بإعداد محفوظ وبيانات مؤقتة، وراقب فرعًا واحدًا في كل مرة، وتوقف إذا أدى الاختبار إلى زيادة مخاطر فقدان البيانات أو الأذونات أو التوافر.
افصل تلف المستودع أو الوجهة عن أخطاء قراءة الملفات المصدرية أو أذوناتها أو تغيّرها
سجّل البيئة قبل تغيير أي شيء: إصدارات البرامج والبرامج الثابتة، وهويات الأجهزة، ومسار التحميل أو الشبكة، والمساحة الحرة، والأذونات، والعَرَض القابل للملاحظة. يجب أن يحافظ خط الأساس على تفاصيل كافية لإعادة إنتاج توقف النسخة الاحتياطية بسبب أخطاء في القراءة أو المجموع الاختباري أو الأذونات أو الحزم أو الفهرس.
الاحتمال الأول هو تلف المستودع أو الوجهة. والثاني هو أخطاء قراءة الملفات المصدرية أو أذوناتها أو تغيّرها. يحدد تسلسل استكشاف أخطاء Restic وإصلاحها الحالي الآلية أو حدود الأوامر المستخدمة في الاختبار؛ لكنه لا يحل محل الملاحظة من هذا الخادم المنزلي المحدد.
اكتب شرط القبول وشرط التوقف قبل تشغيل أداة التمييز. يجب أن يغيّر النجاح الأدلة التي يتنبأ بها أحد الفرعين مع إبقاء الخدمات غير ذات الصلة دون تغيير؛ أما الفشل فيجب أن يعيد النظام إلى حالته المحفوظة بدلًا من إطلاق سلسلة من الإصلاحات التخمينية.
شغّل أداة تمييز واحدة خاضعة للتحكم
استخدم أداة التمييز التالية: شغّل فحص المستودع واستعادة اختبارية، ثم أنشئ نسخة احتياطية من مجموعة اختبار ثابتة قابلة للقراءة، وافحص أخطاء المصدر بشكل منفصل. حافظ على ثبات عبء العمل والعميل والمسار ومجموعة الملفات والتوقيت حتى تُنسب النتيجة إلى المتغير الذي تغيّر.
استخدم سير عمل مستقل لـ Restic لاختيار الحقل الذي يمكنه فعليًا الفصل بين الفرعين، ثم التقط طابعه الزمني، وحالة الخروج، ونص الخطأ، وهوية الجهاز أو اللقطة، ووقت الاستجابة، والبايتات المنقولة، والأذونات، وحالة الاسترداد. لا يكفي خروج الأمر بنجاح عندما تكون الهوية أو المتانة أو حالة التطبيق هي الادعاء قيد الاختبار.
كرّر الاختبار مرة واحدة بعد إعادة التشغيل أو إعادة الاتصال أو إعادة التحميل أو استخدام ذاكرة تخزين مؤقت باردة، عندما يكون ذلك الحدث جزءًا من الحالة الأصلية. إذا كان التشغيل الأول تدميريًا أو تعذرت استعادة البيئة، فتوقف وأعد الإنتاج على نسخة مؤقتة بدلًا من ذلك.
restic check
restic restore latest --include /canary --target /tmp/restore-test
فسّر أي فرع تدعمه الأدلة
نجاح: تفشل فحوصات المستودع أو عمليات الاستعادة عبر المصادر، أو تفشل مسارات مصدر محددة فقط بينما يظل المستودع سليمًا. سجّل الإصدار والهوية وعبء العمل الدقيق الذي نجح، حتى يظل الاستنتاج مشروطًا بدلًا من تحوله إلى ادعاء عام.
فشل: تؤثر أعطال الشبكة والذاكرة في الاختبارين معًا، لذا أعد الإنتاج محليًا قبل إعلان تلف أي من الجانبين. لا يثبت الفشل تلقائيًا الفرع المقابل عندما يمكن للشبكة أو الذاكرة أو الأذونات أو اتساق المصدر أن تؤثر في كليهما؛ اعزل تلك التبعيات المشتركة قبل التصعيد.
نتيجة استثنائية أو ملتبسة: جمّد أعمال الصيانة التدميرية، وانسخ السجلات، واحمِ آخر حالة جيدة للمستودع. احتفظ بالسجلات، ولا تشغّل أوامر الإصلاح أو التنظيف أو التدمير أو إعادة التقسيم أو تغيير الملكية بشكل تكراري حتى تتوفر نسخة قابلة للاسترداد.
طبّق الإجراء المطابق وأعد إنتاج الفشل الأصلي
طبّق الإجراء المطابق للفرع المرصود، ثم كرّر الحالة الأصلية بدلًا من بديل مبسّط. لا يصح القرار إلا عندما تفشل فحوصات المستودع أو عمليات الاستعادة عبر المصادر، أو تفشل مسارات مصدر محددة فقط بينما يظل المستودع سليمًا خلال دورتين أو أثناء إعادة التشغيل أو السكون أو الانقطاع أو انتقال الحمل ذي الصلة.
استخدم تحديد حجم حزم Restic لفحص سير العمل التابع الأقرب، لكن أبقِ المحفز الأصلي دون تغيير. يجب أن تحتفظ مجموعات البيانات والمشاركات والحاويات والمستخدمون ونقاط الاسترداد غير ذات الصلة بوصولها وتوقيتها السابقين.
حد التوقف واضح: إذا أثرت أعطال الشبكة والذاكرة في الاختبارين معًا، فأعد الإنتاج محليًا قبل إعلان تلف أي من الجانبين، ثم ارجع إلى آخر إعداد تم التحقق منه، واحتفظ بالأدلة، وصعّد إلى اختبار أعمق للمنصة أو العتاد فقط عندما يكون الفرع قابلًا للتكرار.
بعد ثبات النتيجة المستهدفة، قارنها مع تواتر التحقق حتى لا ينقل الإصلاح المخاطر إلى خدمة مجاورة. يظل اختبار مستهدف ناجح يتبعه فشل جديد في النسخ الاحتياطي أو الهوية أو المهلة أو التوافر تغييرًا فاشلًا.
الأسئلة الشائعة
لعزل فشل النسخ الاحتياطي، تتعلق عمليات البحث المتبقية عادةً بما إذا كان فحص المستودع الناجح يمكن أن يثبت تغطية المصدر، وما إذا كان ينبغي إصلاح المستودع فورًا، وما أخطاء المصدر التي يسهل تفويتها. تبقي الإجابات أدناه هذه الحالات الطرفية منفصلة عن القرار الأساسي.
لا يتغير حد القبول: تفشل فحوصات المستودع أو عمليات الاستعادة عبر المصادر، أو تفشل مسارات مصدر محددة فقط بينما يظل المستودع سليمًا. إذا غيّرت حالة متابعة نظام الملفات أو الهوية أو مسار الشبكة أو إصدار التطبيق، فأعد فقط أداة التمييز المتأثرة بذلك التغيير.
توقف عن توسيع التجربة عندما تؤثر أعطال الشبكة والذاكرة في الاختبارين معًا، فأعد الإنتاج محليًا قبل إعلان تلف أي من الجانبين. عندها جمّد أعمال الصيانة التدميرية، وانسخ السجلات، واحمِ آخر حالة جيدة للمستودع؛ واحتفظ بالأدلة قبل التصعيد إلى مسؤول المنصة أو التخزين أو العتاد.
هل يمكن لفحص مستودع ناجح أن يثبت تغطية المصدر؟
لا. فهو يثبت خصائص المستودع، لكنه لا يثبت أن كل ملف مصدر مقصود كان قابلًا للقراءة أو قد أُدرج.
هل ينبغي إصلاح المستودع فورًا؟
ليس قبل إنشاء نسخة أمان حيثما كان ذلك عمليًا، والتأكد من فئة الفشل.
ما أخطاء المصدر التي يسهل تفويتها؟
قد تختفي حالات رفض الأذونات والملفات المختفية والقطاعات غير القابلة للقراءة والملفات المتناثرة ومشكلات اتساق التطبيق داخل الملخصات.
يكتمل التشخيص عندما يجعل عبء العمل نفسه الأدلة تتبع تلف المستودع أو الوجهة، أو أخطاء قراءة الملفات المصدرية أو أذوناتها أو تغيّرها، وعندما يزيل الإجراء المطابق العَرَض الأصلي دون إنشاء عَرَض ثانٍ. إذا لم يظل أي من الفرعين قابلًا للتكرار، فحافظ على السجلات والحالة المحفوظة كما هي؛ فعدم اليقين سبب للتصعيد، وليس لتكديس مزيد من الإصلاحات.
الدعم والنصائح
المزيد للقراءة

دليل تخزين تسجيلات التلفزيون المباشر للسعة والاحتفاظ والتنظيف
قِس التسجيلات الفعلية، واترك هامشًا احتياطيًا، واجمع بين حدود العمر والسعة، وأثبت إزالة أقدم برنامج مؤهل قبل امتلاء مساحة التخزين.

سير عمل استعادة البيانات الوصفية للوسائط المنزلية بعد استعادة قاعدة البيانات
احمِ الحالة المستعادة، وتحقق من هوية الوسائط ومساراتها، ثم أصلح الأعمال الفنية أو المطابقات المفقودة في مكتبة تجريبية قبل إجراء تغييرات واسعة على البيانات...

قائمة التحقق من توافق عميل Jellyfin مع الصوت والفيديو والترجمات المصاحبة
اختبر ملفات تمثيلية مع تغيير متغير واحد في كل مرة، وسجّل التشغيل المباشر، أو إعادة التغليف، أو تحويل الصوت، أو تحويل الفيديو، أو الفشل...

