لا تتخلَّ عن خادم Immich القديم لمجرد أن لوحة التحكم الجديدة تُحمَّل وأن الصور تظهر. تخلَّ عنه فقط بعد أن يثبت النظام المستعاد سلامة المستخدمين والألبومات والأشخاص والبحث والعينات المختارة من الملفات الأصلية وعمليات الرفع الجديدة والمهام الخلفية وعمليات إعادة التشغيل والنسخة الاحتياطية الجديدة، مع بقاء المضيف القديم متاحًا كهدف للتراجع.
أبقِ الخادم القديم متوقفًا عن التشغيل ولكن من دون تغيير أثناء التحقق، حتى لا يقبل مثيلان عمليات رفع على حالتين متباينتين. امنح المضيف المستعاد عنوانًا تجريبيًا خاضعًا للتحكم أولًا، وسجّل خطًا أساسيًا من النظام القديم، ثم قارن سير العمل نفسه داخل المنزل بدلًا من الاعتماد على انطباع بصري بأن المخطط الزمني يبدو مكتملًا.
أبقِ الخادم القديم سليمًا أثناء إعداد خط أساس للاستعادة
قبل التحويل، سجّل عدد المستخدمين، وعدد الأصول، وبعض الألبومات الممثلة، والأشخاص المُسمّين، والمفضلة، والعناصر المشتركة، ومسارات المكتبات الخارجية، وعدة ملفات أصلية نموذجية من تواريخ ومستخدمين مختلفين. سجّل أيضًا إصدارات Immich وPostgreSQL القديمة ونسخ النسخ الاحتياطية المستخدمة للاستعادة. تُعد فحوصات سلامة المجلدات أو التخزين بوابات مفيدة، لكنها لا تحل محل التحقق على مستوى العلاقات.
يتعامل نموذج الاستعادة في ZimaSpace مع استعادة مكتبة صور قابلة للبحث باعتبار الملفات الأصلية وحالة الفهرس/قاعدة البيانات والإعدادات التي تحدد المسارات وحدة استعادة واحدة. وهذا هو خط الأساس الصحيح، لأن ملفات الصور المنفصلة وحدها لا تثبت بقاء عضوية الألبومات والملكية والأشخاص وعلاقات البحث.
لا تمسح الأقراص القديمة، ولا تعِد استخدام عنوان IP الخاص بها بصورة دائمة، ولا تحذف آخر نسخة احتياطية معروفة بسلامتها بعد. يجب أن يكون هدف التحقق قابلًا للتراجع: فإذا فُقدت علاقة مهمة، فستحتاج إلى الحالة القديمة لتحديد ما إذا كانت المشكلة ناتجة عن النسخة الاحتياطية أو طريقة الاستعادة أو تعيين المسارات أو بيئة التشغيل الجديدة.
تحقق من العلاقات، لا من ظهور الصور فقط
سجّل الدخول بأكثر من مستخدم متوقع، وتحقق من أن كل حساب يرى الأصول والمشاركات الصحيحة. افتح الألبومات المعروفة والأشخاص المُسمّين والمفضلة والذكريات أو غيرها من العلاقات الخاصة بأفراد المنزل، والتي يصعب إعادة بنائها من الملفات وحدها. قارن مجموعة صغيرة منها بخط الأساس المسجّل للخادم القديم.
توضح مناقشة حول ترحيل Immich وفقدان الألبومات بعد استعادة PostgreSQL سبب أهمية ذلك: فقد تبقى الصور بينما تغيب حالة الألبومات، كما أن إعادة تفريغ قاعدة البيانات لاحقًا غيّرت النتيجة. تعامل مع ذلك كدليل عملي على أن نجاح تسجيل الدخول أو ظهور المخطط الزمني لا يمثل اختبار استعادة كاملًا.
ابحث عن عدة أصول معروفة باستخدام البيانات الوصفية وأي ميزات مرئية أو ميزات أشخاص مفعّلة. إذا كانت الملفات الأصلية موجودة لكن العلاقات أو نتائج البحث مفقودة، فحدّد ما إذا كان ينبغي استعادة الحالة المعنية أو أنها تُعاد توليدها عمدًا. لا تتخلَّ عن الخادم القديم ما دام هذا الفرق غير محسوم.
اختبر مسارات القراءة والكتابة والتبعيات وإعادة التشغيل
افتح الصور ومقاطع الفيديو القديمة مباشرة من وحدة التخزين المستعادة، ثم ارفع أصلًا جديدًا غير مهم من عميل محمول أو عبر الويب. أكّد كتابة الملف الأصلي في المسار المقصود، وظهوره للمستخدم الصحيح، وتقدّم مهامه الخلفية. اختبر المكتبات الخارجية والوصول عن بُعد فقط بعد استقرار مسار القراءة والكتابة المحلي.
يجب أن يتحقق اختبار الاستعادة من التطبيق بعد نسخ البيانات. يوصي دليل حالي لاختبار التعافي من الكوارث بالتحقق على مستوى التطبيق، بما يشمل قواعد البيانات والأذونات واتصالات الشبكة والخدمات، بدلًا من التوقف عند اكتمال مهمة النسخ الاحتياطي أو الاستعادة. أعد تشغيل حزمة Immich مرتين، وأعد تشغيل المضيف الجديد مرة واحدة. بعد كل دورة، أكّد عودة نقاط التحميل نفسها والمستخدمين والأصول النموذجية وقاعدة البيانات ونقطة النهاية المحلية أو الوكيل وسلوك المهام. لم ينجح الترحيل لخدمة لا تعمل إلا إلى أن تحدث أول إعادة تشغيل للمضيف.
أنشئ نسخة احتياطية جديدة قبل إغلاق نافذة التراجع
أنشئ نسخة احتياطية جديدة متسقة مع قاعدة البيانات، واحمِ نطاق الوسائط والإعدادات المطلوب وفق تصميم الاستعادة. استعد هدف تحقق صغيرًا على الأقل، أو افحص النسخة الاحتياطية باستخدام العملية نفسها التي استُخدمت قبل التحويل. لا ينبغي لخادم مستعاد لا يستطيع إنشاء نسخة احتياطية قابلة للاستعادة بنفسه أن يصبح النسخة الإنتاجية الوحيدة.
أخضع المضيف الجديد لفترة مراقبة محددة تشمل عمليات الرفع المعتادة من الهاتف والتصفح والبحث والمعالجة الخلفية والنسخ الاحتياطي المجدول ودورة ليلية واحدة على الأقل. أبقِ المضيف القديم متوقفًا حتى لا يقسم الحالة، لكن احتفظ به دون تغيير إلى أن يصمد النظام الجديد أمام تلك الأحداث من دون فروق غير مبررة.
يتطلب قرار الاعتماد تطابق العلاقات المهمة، ووضوح الملفات الأصلية، ونجاح عمليات الكتابة الجديدة، واستقرار عمليات إعادة التشغيل، ونسخة احتياطية جديدة تم التحقق منها.
إذا اختفى مستخدمون، أو اختلفت الأعداد اختلافًا جوهريًا، أو عادت أخطاء المسارات، أو أبلغت قاعدة البيانات عن مشكلات اتساق، فأوقف تشغيل المثيل الجديد واحفظ الجانبين قبل التحقيق. عندها فقط ينبغي مسح الخادم القديم أو إعادة استخدامه.
الدعم والنصائح
المزيد للقراءة

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

كيفية منع تكرار المهام أو عمليات الاستيراد في Immich
افصل المهام المتكررة عن الأصول المكررة. استخدم مسارًا أساسيًا واحدًا للإدخال، وتحكّم في عمليات إعادة المحاولة وتغييرات المسارات، ثم اختبر إعادة الإدخال على مجموعة...

كيفية إصلاح Immich بعد امتلاء وحدة تخزين قاعدة البيانات الخاصة به
لا تحذف سجلات WAL الخاصة بـ PostgreSQL لتحرير المساحة مطلقًا. أوقف عمليات الكتابة في Immich، وحافظ على حالة قاعدة البيانات، وأضف سعة تخزين آمنة،...

