لا يمكن تثبيت إضافات جديدة: البنية بحاجة للتنظيف

مرحبًا، عند إضافة مكون الإضافات أو مكون الترجمة في containers/app.yml ومحاولة إعادة بناء التطبيق، أحصل على المخرجات التالية. ومن الغريب أيضًا ظهور عبارة هولندية في رسالة الخطأ.

التأكد من تحديث المشغل
جلب المصدر
تحذير: غير قادر على الوصول إلى '.git/info/grafts': يجب تنظيف البنية
تحذير: غير قادر على الوصول إلى '.git/info/grafts': يجب تنظيف البنية
تحذير: غير قادر على الوصول إلى '.git/info/grafts': يجب تنظيف البنية
تحديث المشغل...
تحذير: غير قادر على الوصول إلى '.git/info/grafts': يجب تنظيف البنية
تحذير: غير قادر على الوصول إلى '.git/info/grafts': يجب تنظيف البنية
تحذير: غير قادر على الوصول إلى '.git/info/grafts': يجب تنظيف البنية
التحديث من 333b879 إلى f982cc4
تحذير: غير قادر على الوصول إلى '.git/info/attributes': يجب تنظيف البنية
تحذير: غير قادر على الوصول إلى '.git/info/exclude': يجب تنظيف البنية
خطأ: التغييرات المحلية في الملفات التالية سيتم تجاوزها أثناء الدمج:
        image/base/Dockerfile
        image/base/install-gifsicle
        image/base/install-imagemagick
        image/base/install-nginx
        image/base/install-pngcrush
        image/base/install-pngquant
        image/base/install-redis
يرجى تأكيد التغييرات أو إخفاؤها قبل الدمج.
إلغاء العملية
فشل التحديث
تم تحديث المشغل، إعادة التشغيل...

وهذا يتكرر إلى ما لا نهاية حتى أضغط CTRL+C.

من المحتمل أنني أرتكب خطأً ما. لقد حاولت تحديث كل شيء إلى أحدث إصدار، لكن دون جدوى.

هل هناك أي معلومات إضافية يمكنني تقديمها؟ هل توجد إجراءات تنظيف يمكنني تجربتها ثم محاولة تثبيت الإضافات مرة أخرى؟

هل أضفت السطرين لاستنساخ هذه الإضافات وقمت بتشغيل

 ./launcher rebuild app

؟

مرحبًا، لقد اتبعت هذه الإجراء.

جزء الإضافات في ملف containers/app.yml:

## توضع الإضافات هنا
## راجع https://meta.discourse.org/t/19157 للتفاصيل
hooks:
  after_code:
- exec:
    cd: $home/plugins
    cmd:
      - git clone https://github.com/discourse/docker_manager.git
      - git clone https://github.com/paviliondev/discourse-locations.git
      - git clone https://github.com/discourse/discourse-sitemap.git
#          - git clone https://github.com/discourse/discourse-reactions.git
      - git clone https://github.com/discourse/discourse-translator.git

لقد جربت الأمر مرة أخرى للتو، وتكرر نفس حلقة المخرجات مرارًا وتكرارًا.

مرحبًا جاي، هل لديك أي فكرة حول هذا؟ هل هناك أي شيء يمكنني فعله لتقديم مزيد من المعلومات؟

عذرًا. لم يلفت انتباهي شيء. قد تحتاج إلى مسافتين أمام - exec (أو ربما تم النسخ بشكل غير صحيح؟). هذه ليست رسالة خطأ أعرفها أو أتوقع أن تسبب تلك المشكلة. .. نعم. ربما تحتاج إلى 4 مسافات أمام - exec ومسافتين إضافيتين أمام الباقي. يمكنك (أو إعادة تسمية) ملف app.yml الخاص بك وإعادة تشغيل discourse-setup ثم نسخ/لصق سطر discourse_docker بعناية وتعديله لإضافة الإضافات الإضافية.

إذا كنت ترغب في حل هذه المشكلة من خلال الاستعانة بخبير، راجع Redirecting… أو Redirecting… ويمكنني إلقاء نظرة.

إعجاب واحد (1)

جربت اقتراحك، وأعتقد أنني حصلت على شيء عند تشغيل discourse-setup، وقد ظهر لي هذا:

تحذير: يتطلب Discourse مساحة تبديل (swap) لا تقل عن 2 جيجابايت عند التشغيل مع ذاكرة عشوائية (RAM) مقدارها 2 جيجابايت أو أقل. يبدو أن هذا النظام لا يملك مساحة تبديل كافية.

بدون مساحة تبديل كافية، قد لا يعمل موقعك بشكل صحيح، وقد لا تكتمل ترقيات Discourse المستقبلية بنجاح.

اضغط Ctrl+C للخروج أو انتظر 5 ثوانٍ لإنشاء ملف تبديل بحجم 2 جيجابايت.
install: لا يمكن الوصول إلى '/swapfile': يجب تنظيف البنية
fallocate: لا يمكن فتح /swapfile: يجب تنظيف البنية
mkswap: لا يمكن فتح /swapfile: يجب تنظيف البنية
swapon: لا يمكن فتح /swapfile: يجب تنظيف البنية
/swapfile       swap    swap    auto      0       0
vm.swappiness = 10
فشل إنشاء مساحة التبديل: هل أنت مستخدم الجذر (root)؟ هل تعمل على عتاد حقيقي أم على خادم مُؤتلف بالكامل؟

أظهرت الأداة free عدم توفر مساحة تبديل على خادمك الافتراضي (VPS). الأمر غريب لأنني لم أواجه هذه المشكلة من قبل، والموقع يعمل بشكل جيد بخلاف ذلك. كما نجحت في تثبيت الإضافات أيضًا.

هل يجب الحصول على مساحة تبديل أم هناك عملية تنظيف يمكن القيام بها؟

تمت عملية تنظيف ./launcher، لكنها لم تُجدِ نفعًا.

ما يثير اهتمامي هو سطر الخطأ الهولندي هذا:

Structure moet worden opgeschoond

يحدث ذلك أثناء تشغيل discourse-setup وعند محاولة التبديل. ويظهر أثناء محاولة الوصول إلى .git/info/grafts.

إذن، هل قمت بحذف/إعادة تسمية ملف app.yml وأعدت تشغيل إعدادات Discourse ولا تزال تحصل على نفس الخطأ؟ هذا غريب.

لا أتوقع أن يُساعد الأمر ./launcher cleanup. هذا الأمر يحاول فقط تنظيف عناصر Docker (في الغالب).

Failed to create swap: are you root? Are you running on real hardware, or a fully virtualized server?

مرحبًا. لدي سؤال: هل أنت مستخدم root؟ هل تعمل على خادم مُؤتمت بالكامل؟

هل قمت بالتثبيت منذ فترة طويلة جدًا؟

لكنني فقدت معظم الأفكار حول هذه المشكلة.

حسناً، يجب أن يكون هناك شيء ما يتعلق بنظام الملفات. انظر إلى هذا: لا أستطيع حتى الدخول إلى مجلد ‘info’ باستخدام أمر cd:

root@skrzat:/var/discourse/.git# ls -al
ls: لا يمكن الوصول إلى 'info': يجب تنظيف البنية
الإجمالي 32
drwxr-xr-x   8 root root  198 مارس 26 21:54 .
drwxr-xr-x  11 root root  246 يناير 7 22:18 ..
drwxr-xr-x   2 root root    6 نوفمبر 13 11:43 branches
-rw-r--r--   1 root root  274 نوفمبر 13 11:43 config
-rw-r--r--   1 root root   73 نوفمبر 13 11:43 description
-rw-r--r--   1 root root    0 مارس 26 21:53 FETCH_HEAD
-rw-r--r--   1 root root   23 نوفمبر 13 11:43 HEAD
drwxr-xr-x   2 root root  301 نوفمبر 13 11:43 hooks
-rw-r--r--   1 root root 7395 يناير 7 22:18 index
d?????????   ? ?    ?       ?            ? info
drwxr-xr-x   3 root root   30 نوفمبر 13 11:43 logs
drwxr-xr-x 155 root root 4096 مارس 24 15:13 objects
-rw-r--r--   1 root root   41 مارس 26 21:52 ORIG_HEAD
-rw-r--r--   1 root root 1572 نوفمبر 13 11:43 packed-refs

drwxr-xr-x 5 root root 46 نوفمبر 13 11:43 refs

أغرب شيء هو كل تلك علامات الاستفهام.

سأقوم ببحثي الخاص، على الأرجح لا علاقة له بـ Discourse على الإطلاق.

إعجاب واحد (1)

مرحباً بالجميع، فقط لأبلغكم عن كيفية حل هذه المشكلة.

كان الأمر بالفعل نظام الملفات XFS الذي تضرر بشدة. لإصلاحه، تطلّب الأمر تثبيت XFSprogs، وهو ما لم أستطع فعله لأن استخدام apt-get للتثبيت أدى إلى نفس الأخطاء.

لقد أدركت أن تثبيت الإضافات وإعادة بناء التطبيق عملية تستهلك ذاكرة كبيرة. ومع ذلك، لدي منتدى صغير يعمل على عتاد محدود: 2 جيجابايت من ذاكرة الوصول العشوائي و15 جيجابايت من مساحة القرص. لم يكن هناك مساحة تبديل (Swap) مفعّلة، وفرضيتي هي أنني واجهت مشاكل في الذاكرة لأنني اضطررت إلى إعادة تشغيل النظام عدة مرات أثناء محاولة تثبيت الإضافات. وهذا على الأرجح ليس أمراً جيداً لنظام الملفات، وقد وضع XFS إجراءات حماية، من بينها حول مجلد GIT.

لذلك، استعدت نسخة احتياطية (لحسن الحظ كانت على S3، لذا لم تكن هناك مشاكل)، ونسخت ملف app.yml، ثم أعدت تشغيل الخادم الافتراضي (VPS) وأضفت مساحة التبديل (Swap) باستخدام هذا الدليل (خادم افتراضي يعمل بنظام Debian). وفي أقل من ساعة، كانت الأمور تعمل مرة أخرى. قليلاً من :sweat_smile

أما إضافة التفاعلات التي كنت أطمح إليها، فتعمل بشكل ممتاز!

4 إعجابات

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.