وصف المشكلة #
أثناء عملية ترقية Debian Buster، قد يواجه المستخدمون مشكلة مع حزمة libc6، مما يؤدي إلى ظهور رسالة الخطأ التالية:
/usr/bin/perl: خطأ أثناء تحميل المكتبات المشتركة: libcrypt.so.1: تعذر فتح ملف الكائن المشترك: لا يوجد ملف أو دليل من هذا القبيل (قراءة قاعدة البيانات ... 49108 ملفًا ومجلدًا مثبتًا حاليًا.) التحضير لفك الضغط .../libc-dev-bin_2.36-9+deb12u3_amd64.deb ... فك ضغط libc-dev-bin (2.36-9+deb12u3) عبر (2.28-10+deb10u1) ... إعداد libc6:amd64 (2.36-9+deb12u3) ... /usr/bin/perl: خطأ أثناء تحميل المكتبات المشتركة: libcrypt.so.1: تعذر فتح ملف الكائن المشترك: لا يوجد ملف أو دليل من هذا القبيل dpkg: خطأ في معالجة الحزمة libc6:amd64 (--configure): تم إرجاع عملية فرعية من البرنامج النصي لما بعد التثبيت لحزمة libc6:amd64 المثبتة حالة خروج الخطأ 127 تم مواجهة أخطاء أثناء المعالجة: libc6:amd64 E: أعادت العملية الفرعية /usr/bin/dpkg رمز خطأ (1)
تحليل الأداء #
ينشأ الخطأ أثناء الترقية من Debian Buster إلى Bookworm بسبب التبعيات الدائرية بين LIBC و libcrypt التي تم تجنبها عمدًا في Bookworm. تؤدي التبعيات الدائرية إلى غياب المكتبة المشتركة المطلوبة. libcrypt.so.1فشل تكوين حزمة libc6 بشكل صحيح، مما أدى إلى ظهور خطأ في حالة الخروج. يُبرز هذا الموقف جهود Bookworm لكسر التبعيات الدائرية، مما قد يؤدي إلى مشاكل أثناء الترقيات.
خطوات الحل #
لحل هذه المشكلة، اتبع خطوات الحل اليدوي الموضحة أدناه:
1. افتح المحطة الطرفية وانتقل إلى الدليل المؤقت:
الجذر@noid-ce-01:~# cd $(mktemp -d) الجذر@noid-ce-01:/tmp/tmp.XX#
2. تنزيل حزمة libcrypt1:
root@noid-ce-01:/tmp/tmp.XX# apt -y تنزيل libcrypt1
3. استخرج محتويات حزمة libcrypt1:
root@noid-ce-01:/tmp/tmp.XX# dpkg-deb -x libcrypt1_*.deb .
4. انسخ ملفات المكتبة المستخرجة إلى دليل مكتبة النظام:
root@noid-ce-01:/tmp/tmp.XX# cp -ra lib/* /lib/
5. قم بإجراء إصلاح لأي تثبيتات معطلة:
root@noid-ce-01:/tmp/tmp.XX# apt -y --fix-broken install
6. أكمل ترقية مجموعة البرامج البسيطة:
root@noid-ce-01:~# apt-get upgrade root@noid-ce-01:~# apt-get dist-upgrade
بعد اتباع هذه الخطوات، سيتم تثبيت مكتبة libcrypt.so.1 المفقودة، وسيتم تهيئة حزمة libc6 دون أخطاء. بعد ذلك، يمكن للمستخدمين متابعة ترقية Debian Buster دون مواجهة المشاكل المذكورة سابقًا.
ملاحظة: تأكد من أن لديك الامتيازات المناسبة لتنفيذ هذه الأوامر وفكر في عمل نسخة احتياطية للبيانات الهامة قبل إجراء ترقيات للنظام.