خطأ: لا توجد هذه الملف أو الدليل @ rb_sysopen - /etc/postgresql/15/main/postgresql.conf

حاولت التحديث عبر المسؤول، لست متأكدًا مما حدث ولكن صفحات المسؤول أصبحت فارغة بينما الواجهة الأمامية كانت على ما يرام. قررت إجراء التحديث مرة أخرى عبر سطر الأوامر وحصلت على هذا الخطأ

Errno::ENOENT: No such file or directory @ rb_sysopen - /etc/postgresql/15/main/postgresql.conf

cd /var/discourse; ./launcher rebuild app
تم اكتشاف بنية x86_64.
التأكد من أن المشغل محدث
جلب الأصل
المشغل محدث
2.0.20240708-0023: سحب من discourse/base
الهضم: sha256:025e9c1f68
الحالة: الصورة محدثة لـ discourse/base:2.0.20240708-0023
docker.io/discourse/base:2.0.20240708-0023
/usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups.rb
/usr/local/bin/pups --stdin
I, [2025-02-06T20:57:43.044950 #1]  INFO -- : القراءة من stdin
I, [2025-02-06T20:57:43.066724 #1]  INFO -- : File > /etc/service/postgres/run  chmod: +x  chown: 
I, [2025-02-06T20:57:43.072432 #1]  INFO -- : File > /etc/service/postgres/log/run  chmod: +x  chown: 
I, [2025-02-06T20:57:43.077790 #1]  INFO -- : File > /etc/runit/3.d/99-postgres  chmod: +x  chown: 
I, [2025-02-06T20:57:43.083299 #1]  INFO -- : File > /root/install_postgres  chmod: +x  chown: 
I, [2025-02-06T20:57:43.087962 #1]  INFO -- : File > /root/upgrade_postgres  chmod: +x  chown: 


فشل
--------------------
Errno::ENOENT: No such file or directory @ rb_sysopen - /etc/postgresql/15/main/postgresql.conf
موقع الفشل: /usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups/replace_command.rb:11:in `read'
فشل الاستبدال مع المعلمات {"filename"=>"/etc/postgresql/15/main/postgresql.conf", "from"=>"data_directory = '/var/lib/postgresql/15/main'", "to"=>"data_directory = '/shared/postgres_data'"}
فشل التهيئة مع رمز الخروج 1
** فشل التهيئة ** يرجى التمرير لأعلى والبحث عن رسائل خطأ سابقة، قد يكون هناك أكثر من واحدة.
قد يساعد ./discourse-doctor في تشخيص المشكلة.

بعض المعلومات الأخرى

cat containers/app.yml | grep postgres

- "templates/postgres.template.yml"

كيف يمكن إصلاح ذلك؟

لديّ قطرة ديجيتال أوشن، أوبونتو، إذا كان ذلك مفيدًا.

لدي حاوية واحدة فقط.

هل تلك الرموز * موجودة حقًا؟

ينبغي أن تكون

- "templates/postgres.template.yml"

عذرًا، لقد كان خطأ في النسخ واللصق. لقد قمت بإصلاحه. لا، إنها ليست موجودة.

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

لقد قمت فقط بمحاولة تحديث نسخة أخرى على خادم آخر ونجح الأمر. كلا الخادمين هما من نوع DO droplets بنفس المواصفات.
لست متأكدًا مما يحدث.

منتداي معطل منذ يومين، ولا يمكنني إصلاحه. تم نقل الموضوع إلى الدعم. آمل أن أحصل على بعض المساعدة.

هذه صورة Docker أقدم بكثير لا تحتوي على حزم PostgreSQL 15 مثبتة، ومن هنا جاء الخطأ:

من المحتمل أن يكون ملف launcher الخاص بك قد تم تعديله وتم تثبيته لاستخدام صورة Docker القديمة المذكورة أعلاه. يمكنك تغييره إلى أحدث صورة المميزة أدناه ثم محاولة إعادة البناء مرة أخرى. (خذ النسخ الاحتياطية اللازمة مسبقًا.)

إعجابَين (2)

شكراً على الرد. لقد تحققت للتو ويبدو أن الأساس في ملف المشغل هو الأحدث

root@host:/var/discourse# cat launcher | grep "base:2.0"
image="discourse/base:2.0.20250129-0720"

ومع ذلك، أثناء إعادة البناء، لا يزال يأخذ الصورة القديمة، فمن أين يتم التقاط هذه الصورة القديمة؟ وكيف يمكنني التحقق من ذلك؟

يمكن تعريفه أيضًا باسم base_image في ملف app.yml الخاص بك. إذا وجدت ذلك، يمكنك ببساطة التعليق (أو إزالة) السطر.

إذا لم يساعد ذلك، يمكنك محاولة البحث المتكرر عن جزء من هذا السلسلة بدلاً من ذلك.

grep --exclude-dir shared -rI 20240708 /var/discourse
3 إعجابات

لقد نجح الأمر. شكراً جزيلاً لمساعدتك.

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

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