نجح إصلاح المصدر لأنه فصل بين أمرين مختلفين: حاوية Nextcloud وبيانات AppData الدائمة الخاصة بها. لم تؤدِّ إزالة الحاوية وإعادة إنشائها إلى إعادة ضبط الإعدادات التي ورثها Nextcloud عند التثبيت التالي. وبعد إزالة AppData القديمة أيضًا، أكد صاحب المنشور الأصلي نجاح إعادة التثبيت النظيفة.
هذا لا يعني أنه ينبغي للمستخدمين الحاليين حذف مجلد AppData عشوائيًا. فقد تحتوي AppData الخاصة بـ Nextcloud على الإعدادات وحالة قاعدة البيانات والمفاتيح وبيانات التطبيقات، وذلك بحسب طريقة بناء الحزمة. انسخ أي بيانات مهمة احتياطيًا، وافحص تعيينات مجلدات المضيف الحالية، واحذف شجرة إعدادات Nextcloud المؤكدة فقط إذا كان هدفك الصريح هو البدء من جديد.
لماذا لم تؤدِّ إعادة تثبيت الحاوية إلى إعادة ضبط Nextcloud
حاويات Docker هي مثيلات تشغيلية مؤقتة. ويعيّن ZimaOS مجلدات المضيف الدائمة داخلها حتى تستمر الإعدادات بعد الترقية وإعادة إنشاء الحاوية.
لذلك قد تؤدي إعادة تثبيت الحزمة نفسها إلى إنشاء حاوية جديدة تمامًا، لكنها تقرأ الإعدادات المعطوبة نفسها فورًا.
لماذا لم ينظف Portainer التطبيق بالكامل
جرّب المستخدم الأصلي Portainer. ولا تؤدي إزالة حاوية Docker من Portainer تلقائيًا إلى حذف كل مجلدات المضيف المرتبطة بها. فقد بقيت حالة AppData خارج دورة حياة الحاوية.
الاسترداد الذي أكده المصدر كان إزالة الحاوية وتنظيف AppData
كان تسلسل الخطوات في المجتمع كما يلي:
- إلغاء تثبيت Nextcloud من متجر تطبيقات ZimaOS؛
- تحديد مجلد AppData الدائم الخاص به؛
- الاحتفاظ بنسخة احتياطية من أي بيانات قد تحتاج إليها؛
- إزالة AppData المعطوبة إذا كان المقصود فعلًا إجراء إعادة تثبيت نظيفة؛
- تثبيت Nextcloud مرة أخرى.
ردّ صاحب المنشور الأصلي قائلًا: «عمل بشكل جيد»، ما يؤكد أن الإجراء المذكور عالج سوء الإعداد المحدد في تلك الحالة.
قد لا تكون AppData قابلة للكتابة من واجهة الملفات العادية
أشار الرد في المجتمع إلى أن AppData كانت مملوكة للنظام/الجذر في المصدر، ولذلك لم يتمكن مستخدم الواجهة العادي من حذفها. ولا يبرر ذلك استخدام chmod -R 777 على نطاق واسع أو تغيير ملكية شجرة AppData بأكملها.
استخدم عناصر التحكم المدعومة حاليًا لبيانات التطبيقات/إلغاء التثبيت حيثما توفرت، أو نفّذ عملية إدارية محدودة النطاق على مجلد التطبيق المحدد بدقة.
يفصل ZimaOS الحالي بوضوح بين الحاويات ومسارات المضيف الدائمة
توضح وثائق IceWhale الحالية لتخزين التطبيقات أماكن حفظ بيانات التطبيقات والوسائط وذاكرة التخزين المؤقت، وتتيح للمستخدمين فحص تعيينات وحدات التخزين بين المضيف والحاوية.
استخدم نموذج تخزين التطبيقات الحالي في ZimaOS.
قد يتكون Nextcloud من أكثر من حاوية واحدة
تتضمن بعض حزم Nextcloud حاويات منفصلة لقواعد البيانات أو Redis، أو تعتمد على حاويات تديرها AIO. وإذا كنت تستكشف مشكلة في نشر متعدد الحاويات، فحدّد كل مسارات قاعدة البيانات/الإعدادات الدائمة قبل حذف أي شيء.
لا تفترض أن حذف مجلد Nextcloud واحد سيعيد ضبط قاعدة بيانات PostgreSQL/MariaDB خارجية تلقائيًا.
اجعل الخطوة المدمرة واضحة
إذا كان مثيل Nextcloud القديم يحتوي على أي ملفات أو مستخدمين أو مشاركات أو مفاتيح تشفير أو حالة قاعدة بيانات قد تحتاج إليها، فانقلها أو صدّرها قبل التنظيف. فـ«التثبيت الجديد» و«استعادة المثيل القديم» هدفان متعاكسان.
الأسئلة الشائعة حول إعادة تثبيت Nextcloud بشكل نظيف
هل أدى إلغاء التثبيت وإعادة التثبيت وحدهما إلى حل مشكلة المصدر؟
لا. فقد أبقت AppData الدائمة على سوء الإعداد.
هل أدى حذف AppData إلى حل الحالة المذكورة في المصدر؟
نعم. أكد صاحب المنشور الأصلي نجاح عملية التنظيف.
هل ينبغي لي حذف مجلد AppData بالكامل في ZimaOS؟
لا. احذف مسار التطبيق المحدد والمؤكد فقط بعد الاحتفاظ بنسخة احتياطية من أي بيانات مهمة.
