انتقل إلى المحتوى

استكشاف الأخطاء وإصلاحها

أسئلة شائعة قصيرة. للجدول الكامل لاستكشاف أخطاء VM عبر SSH من جانب المضيف (رفض الإذن، فشل التحقق من مفتاح المضيف، متغيرات القالب الناقصة والمزيد)، راجع دليل نسخ الـ VM الاحتياطي عبر SSH على GitHub.

هناك شيء غير موصول بشكل صحيح

افتح /spike في واجهة الويب. يستطلع فحص تكامل المضيف كل نقطة تركيب وواجهة سطر أوامر (مقبس Docker، libvirt، restic، qemu-img، rclone) ويبلّغ عن أي أجزاء ناقصة. ابدأ من هنا قبل افتراض وجود خلل: نقطة تركيب ناقصة أو مضيف غير قابل للوصول يظهر فوراً.

لا أستطيع الوصول إلى واجهة الويب

يقدّم BombVault خدمة HTTPS جاهزة افتراضياً على المنفذ 3443 (شهادة موقّعة ذاتياً)، فافتح https://<your-unraid-ip>:3443. اقبل تحذير الشهادة الموقّعة ذاتياً، أو ضع BombVault خلف عاكس بروكسي بشهادتك الخاصة. إذا شغّلت بـ HTTP_ONLY=true، فإنه يقدّم HTTP عادياً على المنفذ 3000 بدلاً من ذلك (مخصَّص للاستخدام خلف بروكسي ينهي TLS).

فقدت APP_KEY الخاص بي

يشتق APP_KEY كلمة مرور مستودع restic. بدونه (وبدون حقيبة استعادة مفتاح التشفير)، لا يمكن استرداد النسخ الاحتياطية المشفّرة. لهذا تلحّ لوحة التحكم عليك بتنزيل حقيبة الاستعادة. راجع النسخ خارج الموقع والتعافي. أنشئ مفتاحاً بـ openssl rand -hex 32 واحفظه خارج الخادم قبل أن تعتمد على أي نسخة احتياطية.

نسخ الـ VM الاحتياطي لا يتصل

يتحدث نسخ الـ VM الاحتياطي إلى libvirt عبر SSH، وليس عبر نقطة تركيب أبداً.

  • تأكد من تفعيل SSH على المضيف ومن تفويض مفتاح BombVault العام في /root/.ssh/authorized_keys (الإعدادات، النظام، VM Backup over SSH يُظهر المفتاح وزر Test connection).
  • على شبكة br0.x مخصصة، اضبط LIBVIRT_HOST على عنوان LAN IP الخاص بـ Unraid (لا تستطيع الحاوية الوصول إلى المضيف عبر host.docker.internal هناك). فعّل Settings, Docker, Host access to custom networks.
  • إذا غيّرت منفذ SSH في Unraid، اضبط LIBVIRT_SSH_PORT ليطابقه.
  • التشخيص الكامل خطوة بخطوة (اختبار قابلية الوصول، توجيه VLAN، Permission denied (publickey)، Host key verification failed) موجود في دليل نسخ الـ VM الاحتياطي عبر SSH.

لقطة VM حية لم تُشغَّل

تحتاج اللقطات الحية وكيل ضيف qemu مثبَتاً في الـ VM والقرص على /mnt/cache (أو /mnt/diskX)، لا /mnt/user. على VM مُطفأ، تعود الحية تلقائياً إلى الآمنة. تُوقِف النسخة الاحتياطية الآمنة الـ VM، وتنسخ الأقراص احتياطياً، ثم تعيد تشغيله، فتكون متسقة دائماً.

فشلت نسخة احتياطية بـ "repository is already locked"

هذا عادةً قفل restic يتيم تُرِك خلفه عند تحديث الحاوية أو إعادة تشغيلها أثناء عملية. يكتشف BombVault قفلاً يتيماً مثبَتاً، ويمسحه قسراً، ويعيد المحاولة مرة واحدة تلقائياً. إذا استمر، استخدم Settings, Integrity & maintenance, Unlock للنطاق المتأثر لمسح قفل عالق يدوياً. مشكلة حقيقية تظهر مع ذلك بدلاً من إخفائها.

نسختي خارج الموقع لم تحدث بعد نسخة احتياطية

النسخ خارج الموقع بذل أفضل جهد بحكم التصميم، فعثرة خارج الموقع لا تُفشل النسخة المحلية أبداً. تحقق من الجدول الزمني خارج الموقع لذلك النطاق (الإعدادات، Schedules): جدول فارغ ينسخ بعد كل نسخة احتياطية محلية، بينما وتيرة ترسل أقل. استخدم Replicate now في تبويب Off-site لتشغيل عند الطلب، وراقب مؤشر النسخ في لوحة التحكم.

استعادة أُجهضت قبل أن تبدأ

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

فشل تصدير نصي بدلاً من كتابة ملف

إذا كان تشفير age مفعَّلاً (الإعدادات) لكن لم يُضبَط مستلم صالح، يفشل التصدير برسالة خطأ واضحة بدلاً من كتابة نص عادي. أضف مستلماً صالحاً (مفتاح age عام أو مفتاح SSH عام)، أو أوقف التشفير إذا كنت تقصد أن يكون التصدير نصاً عادياً. راجع الميزات.

الحاوية تظل تعيد التشغيل أو تبدو غير صحية

يبلّغ BombVault عن حالته الصحية / غير الصحية من /api/health الخاص به. يمكن لأداة إصلاح ذاتي (مثل Autoheal) إعادة تشغيله تلقائياً إذا علِق المحرك يوماً. تحقق من سجل الحاوية وتقرير /spike للسبب الكامن.

ما زلت عالقاً؟