فشل ترقية Discourse على الويب. ترقية Docker على الويب نجحت

نجحت النسخة الويب لتحديث Docker، وفشلت النسخة الويب لتحديث Discourse.
أعدت تعيين التحديث الفاشل، لكن التطبيق على الويب قال إن التحديث قيد التقدم.

ذهبت لمحاولة تحديث Discourse يدويًا
cd /var/discourse
./launcher rebuild app

حصلت على الخطأ التالي.
ERROR: Docker version 19.03.13 not supported,please upgrade to at least 20.10.0, or recommend 24.0.7

حاولت ترقية Docker يدويًا:
wget -qO- https://get.docker.com/ | sh

وحصلت على الخطأ التالي:
E: Could not get lock /var/lib/dpkg/lock-frontend. It is being held by process 10528 (apt-get)
E: Unable to aquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?

موقع Discourse الخاص بي معطل مع خطأ Oops-Error 500
أي أفكار؟

هناك عدد قليل من المواضيع حول خطأ إصدار دوكر هذا:

Coin، شكرًا على الإرشادات حول المواضيع!

أحصل على إصدار Docker وهو 19.03.13. ثم أقوم بتحديث نظام التشغيل باستخدام

sudo apt update && sudo apt upgrade -y 3

ويتوقف التحديث عند…

Waiting for cache lock: Could not get lock /var/lib/dpkg/lock-frontend. It is held by process 10528 (apt-get)… 454s

مع زيادة عدد الثواني.

إليك الحل من ChatGPT. كان المفتاح هو فرض إنهاء العملية العالقة في الخطوة 3.

يشير الخطأ إلى أن عملية apt أخرى أو عملية إدارة حزم أخرى قيد التشغيل بالفعل وتحتفظ بملف القفل /var/lib/dpkg/lock-frontend. هذا الوضع يمنع أمر apt الخاص بك من المتابعة. إليك كيفية حل المشكلة:

خطوات لحل المشكلة

  1. التحقق من عمليات apt قيد التشغيل
    قم بتشغيل الأمر التالي للتحقق من عمليات apt أخرى:

    ps aux | grep apt
    

    ابحث عن عمليات مثل apt-get أو apt أو dpkg. إذا كانت هناك عملية قيد التشغيل (على سبيل المثال، apt-get أو dpkg)، فقد تكون تقوم بالتحديث أو التثبيت لشيء ما في الخلفية.

  2. الانتظار حتى تنتهي العملية
    إذا كانت عملية أخرى قيد التشغيل بالفعل، فمن الأفضل الانتظار حتى تكتمل. في بعض الأحيان، تعمل الترقيات غير المراقبة أو عمليات تثبيت الحزم في الخلفية.

  3. فرض إنهاء العملية العالقة
    إذا كانت العملية قيد التشغيل لفترة طويلة بشكل غير طبيعي، يمكنك إنهاؤها:

    sudo kill -9 <PID>
    

    استبدل <PID> بمعرف العملية (على سبيل المثال، 10528 في حالتك).

  4. إزالة ملفات القفل
    بعد إنهاء العملية، قم بإزالة ملفات القفل للتأكد من عدم وجود أقفال قديمة:

    sudo rm /var/lib/dpkg/lock-frontend
    sudo rm /var/lib/dpkg/lock
    
  5. إعادة تكوين قاعدة بيانات الحزم
    قم بتشغيل هذا الأمر لإصلاح أي مشاكل محتملة مع مدير الحزم:

    sudo dpkg --configure -a
    
  6. إعادة محاولة التحديث
    الآن، أعد محاولة أمر التحديث الخاص بك:

    sudo apt update && sudo apt upgrade -y
    

ملاحظات

  • إذا تكررت هذه المشكلة، فتحقق مما إذا كانت الترقيات غير المراقبة أو التحديثات التلقائية تعمل في الخلفية. يمكن أن تسبب هذه تعارضات عند إدارة الحزم يدويًا.
  • لتعطيل الترقيات غير المراقبة، يمكنك تشغيل:
    sudo systemctl disable --now unattended-upgrades
    
إعجاب واحد (1)

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