حلّ المجتمع

تثبيت AdventureLog على ZimaOS دون ظهور خطأ نظام الملفات للقراءة فقط

AdventureLog's installer could not create its folder in the ZimaOS system layer; an IceWhale reply demonstrated running it from a writable directory under /DATA.

بدأ المثبّت من موقع للقراءة فقط

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

فشل مثبّت AdventureLog في إنشاء دليل على نظام ملفات ZimaOS للقراءة فقط
حاولت محاولة التثبيت الأولى إنشاء دليل العمل في موقع لم يكن النظام يسمح بتعديله.

واجه مستخدم ثانٍ فحصًا مختلفًا للتبعيات

أفاد مشارك آخر بأن المثبّت توقّف فورًا لأنه لم يتمكن من العثور على docker-composeولم يكن ذلك الفشل نفسه الذي حدث في الأصل مع mkdir ، ولم يحدّد النقاش أمرًا شاملًا لتثبيت الحزم على مضيف ZimaOS.

أبلغ مثبّت AdventureLog عن فقدان تبعية docker-compose
واجه مشارك لاحق فحصًا للتبعيات بدلًا من خطأ الدليل للقراءة فقط الأصلي.

كان الحل الموضَّح هو العمل ضمن ‎/DATA‎

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

بالنسبة إلى مستخدم متمرس، كان التسلسل الموضَّح كما يلي:

sudo -i
cd /DATA
mkdir 10-16test2
cd 10-16test2/
curl -sSL https://get.adventurelog.app | باش

كان التغيير الأساسي هو دليل العمل: إذ إن /DATA مخصّص للبيانات القابلة للكتابة، بخلاف طبقة النظام للقراءة فقط. يتوفر عنوان URL للمثبّت على نقطة نهاية تثبيت AdventureLog.

عرض توضيحي في طرفية ZimaOS لتثبيت AdventureLog من دليل ضمن DATA
انتقل عرض الفريق إلى المستخدم الجذر وشغّل برنامج التثبيت من مجلد أُنشئ حديثًا ضمن ‎/DATA‎.

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

أكد صاحب الموضوع لاحقًا أن التثبيت نفسه اكتمل بعد اتباع تعليمات استخدام مسار قابل للكتابة. ومع ذلك، لم تبدأ الواجهة الخلفية لـ AdventureLog، وكررت سجلاتها الإبلاغ عن عدم توفر PostgreSQL. ولم يؤدِّ تثبيت تطبيق PostgreSQL منفصل من متجر تطبيقات ZimaOS تلقائيًا إلى ربطه بحزمة AdventureLog.

فشل تسجيل الدخول إلى AdventureLog لأن خدمة الواجهة الخلفية كانت غير متاحة
أصبح الوصول إلى واجهة الويب ممكنًا، لكن تعذّر إكمال تسجيل الدخول إلى التطبيق.
سجل حاوية AdventureLog يوضح أن PostgreSQL غير متاح
فصل سجل الواجهة الخلفية مشكلة قاعدة البيانات عن مشكلة نظام الملفات السابقة.
عرض الحاويات في ZimaOS لعملية نشر AdventureLog غير المكتملة
ظلت الحزمة المنشورة بحاجة إلى اتصال قاعدة البيانات الخاصة بها لكي تصبح فعّالة.

ينتهي الموضوع من دون تأكيد إصلاح قاعدة البيانات. ولا تصبح حاوية PostgreSQL مستقلة تلقائيًا قاعدة البيانات التي يعلنها مشروع Compose آخر؛ إذ يجب أن تتطابق أسماء الشبكات وبيانات الاعتماد واكتشاف الخدمة ووحدات التخزين وتهيئة قاعدة البيانات المتوقعة.

الأسئلة الشائعة

لماذا فشل mkdir رغم أن ZimaOS كان يحتوي على مساحة تخزين خالية؟

كان برنامج التثبيت يعمل في جزء للقراءة فقط من النظام، وليس في دليل بيانات قابل للكتابة. ولا تجعل السعة المتاحة في مكان آخر مسار النظام الحالي قابلاً للكتابة.

هل أدى تشغيل برنامج التثبيت من ‎/DATA‎ إلى حل مشكلة AdventureLog بالكامل؟

لقد حلّ ذلك خطأ دليل التثبيت وسمح بتثبيت الحزمة. وظلت مشكلة توفر PostgreSQL اللاحقة دون حل في الموضوع.