كيفية إصلاح مشكلة “لا مرشح للتثبيت” في أوبونتو


لقد حاولت تثبيت شيء ما ، لكن Ubuntu لا يمكنه جلبه على متن الطائرة. يذكر Apt شيئًا عن “لا مرشح التثبيت” ماذا يعني هذا ، ما هو مصدر المشكلة ، وهل يمكن تثبيته؟

ماذا يعني “الحزمة ليس لها مرشح للتثبيت”؟

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

هناك أيضًا حالة أخرى من الحزم المفقودة: لا يمكن العثور عليها في موقعها المعتاد ولكنها تعرف أنها موجودة لأن حزمة أخرى تشير إليها. في بعض الأحيان ، لم تقم بتمكين المستودع المطلوب (مثل الكون أو الكون المتعدد) ، لذلك يفتقر APT إلى الوصول إلى هذا البرنامج. في حالات أخرى ، قد تكون الحزمة متاحة فقط من خلال PPA من طرف ثالث أو قد لا تدعم بنية نظامك.

على سبيل المثال ، في إصدارات Ubuntu الأحدث ، يتم إهمال بعض الحزم المستخدمة بشكل شائع في المشاريع أو البرامج التعليمية القديمة-مثل Python-PIP (بالنسبة إلى Python 2) أو Ruby أو PHP5 ، من المستودعات الافتراضية. هذا ، بدوره ، يمكن أن يخلق مشاكل عند إعداد بيئات قديمة أو اتباع التعليمات القديمة التي تفترض أن هذه الحزم القديمة لا تزال متوفرة.

إصلاح “لا مرشح للتثبيت” في أوبونتو

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

إذا كنت غير متأكد من الاسم الدقيق ، فاستخدم apt search أمر للبحث عن أسماء حزم مماثلة. على سبيل المثال ، إذا كنت تبحث عن أداة لقطة الشاشة Flameshot ولكن لا تعرف اسم الحزمة الدقيق ، فتشغيل هذا:

apt search flameshot
البحث عن أداة محددة باستخدام أداة أمر البحث APT

إذا كانت قائمة حزم الإخراج كبيرة جدًا ، فيمكنك أيضًا تضييق النتائج مع هذا:

apt search "^PACKAGE_NAME*"

يسرد هذا الأمر جميع الحزم بدءًا من Package_Name. إذا قمت باستبدال package_name بـ Firefox ، فسترى جميع الحزم تبدأ بـ Firefox. قد تجد بديلاً لما تحتاجه. إذا لم يظهر أي شيء ، فقد لا تكون الحزمة في مستودعاتك أو يمكن أن يكون لها اسم مختلف.

تحديث وترقية نظامك

ابدأ من خلال التحقق مما إذا كانت آخر تحديث/ترقية قمت بإزالة الحزمة. ليس عليك أن تصطادها في سجلات خفية ، وتحتاج فقط إلى تحديث نظامك وترقيته للحصول على أحدث الإصدارات من البرنامج المثبت. لتحديث قاعدة بيانات APT ، استخدم هذا:

sudo apt update && sudo apt upgrade
تحديث وترقية النظام على Ubuntu

تحدث هذه المشكلة لأن APT لا تحقق تلقائيًا ما إذا كان مستودعك المحلي متزامن حاليًا مع جهاز التحكم عن بُعد في المنبع. عندما يتخلف جهازك بالتحديثات ، فإن أي روابط عن بعد محددة ستنهار وتنتج أ لا مرشح التثبيت خطأ.

بمجرد تحديث نظامك ، يمكنك تثبيت أي حزمة متوفرة على الفور في مستودعك الافتراضي.

أضف مستودع طرف ثالث

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

الإنترنت هو صديقك في العثور على المستودع المفقود. على سبيل المثال ، يمكنك نسخ روابط أرشيف الحزمة الشخصية للأداة (PPA) من مواقعها الإلكترونية لتضمين مستودعاتها في مثيلك المحلي APT.

بمجرد تحديد موقعه ، يمكنك إضافة المستودع إلى أوبونتو مع الأمر:

sudo add-apt-repository REPOSITORY_PPA

قم بتحديث مثيل APT المحلي لتشمل جميع الحزم من المستودع الجديد. للقيام بذلك ، قم بتشغيل الأمر التالي:

sudo apt update && sudo apt upgrade

تحقق من مصادر البرامج الخاصة بك (المستودعات)

إذا لم يحل التحديث وإضافة PPA المشكلة ، فإن الخطوة التالية هي التحقق مما إذا تم تمكين المستودعات الصحيحة. تحصل Ubuntu على برامجها من مصادر مختلفة ، مثل Main و Universe و Multiverse و Rested. تتوفر بعض الحزم ، خاصة الحزم الأقل شيوعًا ، فقط إذا قمت بتمكين هذه المصادر.

للتحقق منها وتمكينها ، فتح البرامج والتحديثات من قائمة التطبيق الخاصة بك. انتقل إلى علامة تبويب برنامج Ubuntu وتأكد من فحص جميع الخيارات (الرئيسية ، الكون ، المقيد ، المتعدد).

أوبونتو مستودعات مختلفة

انقر فوق “إغلاق” ، ثم إعادة تحميل قائمة الحزمة الخاصة بك مع:

sudo apt update

يمكنك أيضًا تمكين المستودعات باستخدام المحطة. على سبيل المثال:

sudo add-apt-repository universe
sudo add-apt-repository multiverse
sudo add-apt-repository restricted
sudo apt update

هذا يضمن لك الوصول إلى المجموعة الكاملة من الحزم المتاحة. تحتوي هذه المستودعات على الآلاف من الحزم الإضافية غير الموجودة في المستودع الرئيسي. يشتمل مستودع الكون على برامج مفتوحة المصدر التي يتم صيانتها المجتمعية ، بينما يحتوي Multiverse على برامج قد يكون لها قيود ترخيص.

تأكد من دعم إصدار Ubuntu الخاص بك

إذا كنت تقوم بتشغيل نسخة قديمة أو غير مدعومة من Ubuntu ، فقد تكون بعض الحزم مفقودة أو تمت إزالتها من المستودعات. للتحقق من إصدار Ubuntu الخاص بك ، قم بتشغيل:

lsb_release -a
نسخة التحقق من Ubuntu

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

في بعض الأحيان ، تحتوي إصدارات Ubuntu الأحدث على أسماء حزم مختلفة لنفس البرنامج. على سبيل المثال ، قد يكون Python في الإصدارات القديمة الآن Python3 في أحدث الإصدارات. إن البرنامج هو نفسه بشكل أساسي ، لكن اتفاقيات التغليف قد تطورت.

جرب طريقة تثبيت مختلفة

إذا فشل كل شيء آخر ، فيمكنك في كثير من الأحيان تثبيت برنامج باستخدام مدير حزمة Universal بديل مثل Snap أو FlatPak. Snap و Flatpak هي تنسيقات حزمة عالمية تعمل عبر توزيعات Linux.

يشبه التثبيت عبر SNAP APT ، مثل هذا:

sudo snap install <package_name>

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

بدلاً من ذلك ، يمكنك تنزيل البرنامج مباشرة من موقع المطور ومتابعة تعليمات التثبيت الخاصة بهم. بعض المطورين يقدمون حزم دبيان مباشرة. قم بتنزيل ملف .deb من الموقع الرسمي وقم بتثبيته بـ:

sudo apt install ./package_file.deb

للحصول على برنامج مفتوح المصدر ، قد تحتاج إلى تنزيل الكود المصدري ، واستخراجه ، ثم تشغيله:

./configure
make
sudo make install

تذكر أن التجميع من المصدر يمكن أن يسبب مشاكل فظيعة مع التبعيات ، لذا كن حذرًا.

الأسئلة المتداولة

هل من الممكن العثور على قائمة من PPAs المتاحة لأوبونتو؟

نعم! على الرغم من عدم وجود أداة مدمجة لإدراج جميع PPAs المتاحة ، فإن Canonical تتيح للمستخدمين تحميل تفاصيل حول مستودعاتهم الشخصية من خلال LaunchPad. يمكنك البحث عن اسم الحزمة أو المستودع الذي تبحث عنه. يجري sudo add-apt-repository جنبا إلى جنب مع رابط LaunchPad لإضافة مستودع معين إلى نظام Ubuntu الخاص بك ، ثم تحديث APT عن طريق التشغيل sudo apt update.

لاحظ أنه نظرًا لأن LaunchPad يحتوي على مستودعات مقدمة من المستخدمين ، فأنت بحاجة إلى التحقق من سلامة أي من الحزم والمستودعات التي ستضيفها إلى جهازك.

لم يضف Ubuntu مستودع مخصص الخاص بي أثناء التحديث. ماذا أفعل خطأ؟

هذا على الأرجح بسبب مفتاح مفقود من المستودع الذي تحاول إضافته. بشكل افتراضي ، يستخدم Ubuntu مفتاح APT-key للتحقق من كل مستودع للحزم التي تم فحصها ، بما في ذلك المستودعات الكنسية المدمجة وأي PPAs من طرف ثالث من LaunchPad. لا ينطبق هذا على أي مستودع غير مقصود من منصة إطلاق ، لذلك تحتاج أولاً إلى العثور على مفتاح التوقيع الرسمي للمستودع الذي تحاول إضافته.

أنا أستخدم Ubuntu LTS والحصول على خطأ “لا مرشح للتثبيت”. هل نظامي مكسور؟

لا! يمكن أن يحدث خطأ “لا مرشح للتثبيت” إذا كنت تحاول تثبيت حزمة متاحة فقط لإصدار لاحق من Ubuntu. تتمثل إحدى الطرق لحل هذه المشكلة في استخدام Obuntu Backport ، وهو مستودع خاص حيث يمكن للمستخدمين إرسال نسخة محدثة من حزمة من Obuntu والحفاظ عليها. قد يكون من المفيد إذا كانت الترقية غير مرغوب فيها ، ولكن هناك حاجة إلى أحدث البرامج. يمكنك تثبيت حزمة من خلال عمليات التراجع باستخدام -t الخيار في APT متبوعًا باسم إصدار Ubuntu و “-backports”.

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

زر الذهاب إلى الأعلى