إذا تغيرت التبعيات على إحدى الحزم التي قمت بتثبيتها بحيث يجب تثبيت حزمة جديدة لإجراء الترقية ، فسيتم سرد ذلك على أنه"مسترجع".
الحل الحذر 1:
لكل إجابة بابلو، يمكنك تشغيل sudo apt-get --with-new-pkgs upgrade، وسوف تثبيت حزم أبقى الظهر.
هذا له فائدة عدم وضع علامة على الحزم المحفوظة على أنها" مثبتة يدويا " ، مما قد يفرض المزيد من تدخل المستخدم أسفل الخط (انظر التعليقات).
إذا كان حل بابلو يعمل من أجلك ، فيرجى التصويت عليه. إذا لم يكن كذلك ، يرجى التعليق على الخطأ الذي حدث.
الحل الحذر 2:
الحل الحذر هو تشغيل sudo apt-get install <list of packages kept back>. في معظم الحالات ، سيعطي هذا الحزم المحفوظة ما يحتاجون إليه للترقية بنجاح.
الحل العدواني:
الحل الأكثر عدوانية هو الجري sudo apt-get dist-upgrade، مما سيجبر تثبيت تلك التبعيات الجديدة.
لكن dist-upgradeيمكن أن تكون خطيرة جدا. على عكس الترقية قد إزالة حزم لحل حالات التبعية المعقدة. على عكس لك ، عرضة ليست دائما ذكية بما فيه الكفاية لمعرفة ما إذا كانت هذه الإضافات وعمليات الإزالة يمكن أن تعيث فسادا.
لذلك إذا وجدت نفسك في مكان لا يعمل فيه "الحل الحذر, dist-upgradeمايو العمل... ولكن ربما كنت أفضل حالا تعلم أكثر قليلا عن ملائمة وحل قضايا التبعية" باليد " عن طريق تثبيت وإزالة الحزم على أساس كل حالة على حدة.
فكر في الأمر مثل إصلاح سيارة... إذا كان لديك الوقت ومفيد مع وجع ، وستحصل على بعض راحة البال من خلال القراءة والقيام إصلاح نفسك. إذا كنت تشعر بأنك محظوظ, يمكنك إسقاط سيارتك مع ابن عمك dist-upgrade ونأمل أنها تعرف الاشياء لها.
باستخدام apt install <pkg> بدلا من ذلك سوف علامة يكغ باسم"تثبيت يدويا"!! لوضع علامة عليه مرة أخرى باسم" تثبيت تلقائيا " استخدام apt-mark auto <pkg> (انظر أيضا الأوامر الفرعية showmanual). مزيد من المعلومات على هذا الجواب.
إذا ترقية البرنامج (عبر sudo apt-get upgrade) من شأنه أن يسبب حزم التي يمكن ان تضاف أو إزالتها ، ثم سيتم عقد البرنامج مرة أخرى. يمكنك استخدام sudo apt-get dist-upgrade في هذه الحالة ، والتي سوف تقدم بعد ذلك لإضافة أو إزالة برامج إضافية.
هذا أمر شائع جدا وعادة لا يمثل مشكلة. من حين لآخر (خاصة خلال أوبونتو ألفا) أ dist-upgrade سوف تقدم لإزالة الكثير من البرامج الأخرى ، وفي هذه الحالة ربما كنت ترغب في إلغائه.
إذا كان البرنامج يعتمد على حزم أو إصدارات غير متوفرة ، فسيتم إيقاف البرنامج. لا يمكنك فعل أي شيء سوى الانتظار في هذا الظرف ، نظرا لأن الحزمة قابلة للإزالة بشكل أساسي. يمكن أن يحدث هذا عند إضافة الحزم إلى المستودع خارج الترتيب ، أو عند إعادة تسمية الحزمة ، أو عندما تتوقف الحزمة عن توفير حزمة افتراضية.
ترقيات تثبيت الحزم إلى الإصدار الأحدث. لن تتم إزالة الحزم المثبتة إلا إذا كانت غير مستخدمة/.../ قد يتم تثبيت الحزم غير المثبتة حاليا لحل التبعيات ما لم يتم توفير خيار سطر الأوامر-بدون تثبيت جديد.
على الأرجح يتم الاحتفاظ هذه الحزم مرة أخرى لأن تركيبها من شأنه أن يخلق التناقضات التبعية. هذا يمكن أن يحدث إما لأنك تستخدم المحفوظات قيد التطوير النشط ، بس ، أو لأن المرآة التي تستخدمها لم يتم تحديثها بالكامل.
في الحالة الأخيرة ، فقط انتظر ، عندما يتم حل التبعيات سيتم تثبيته في المرة القادمة.
تحرير:
وهناك احتمال آخر, قد تعقد حزم مرة أخرى إذا كان هناك وضع عقد عليها,أو إذا كانت معلقة.
أوبونتو 18.04 ، 20.04 (وأحدث) توفير بناء الجملة المبسط فيا apt full-upgrade التي تعمل مثل sudo apt-get dist-upgrade.
sudo apt full-upgrade
sudo apt upgrade يستخدم لتثبيت الترقيات المتاحة لجميع الحزم المثبتة حاليا على النظام من المصادر التي تم تكوينها عبر المصادر.قائمة (5). سيتم تثبيت حزم جديدة إذا لزم الأمر لتلبية التبعيات ، ولكن لن تتم إزالة الحزم الموجودة. إذا كانت ترقية حزمة تتطلب إزالة حزمة مثبتة ، فلن يتم تنفيذ الترقية لهذه الحزمة.
sudo apt full-upgrade يؤدي وظيفة الترقية ولكن سوف قم بإزالة الحزم المثبتة حاليا إذا كان ذلك ضروريا لترقية النظام ككل.