Що саме робить sudo apt-get -f install?


41

Я це бачив і раніше. Мені просто цікаво, що саме це робить?

Відповіді:


39

Від man apt-get:

   -f, --fix-broken
       Fix; attempt to correct a system with broken dependencies in place. This
       option, when used with install/remove, can omit any packages to permit APT
       to deduce a likely solution. If packages are specified, these have to
       completely correct the problem. The option is sometimes necessary when
       running APT for the first time; APT itself does not allow broken package
       dependencies to exist on a system. It is possible that a system's dependency
       structure can be so corrupt as to require manual intervention (which usually
       means using dselect(1) or dpkg --remove to eliminate some of the offending
       packages). Use of this option together with -m may produce an error in some
       situations. Configuration Item: APT::Get::Fix-Broken.

19
А ви можете подякувати господареві за це. Коли у вас є розбитий пакет, це як скала у взутті ... і ви в марафоні ... з ведмедями, що їдуть на акулах, їдуть на величезних павуків. Але завдяки цьому зламані речі виправляються.
Луїс Альварадо

2
У випадкових ситуаціях, коли sudo apt-get -f installсамі по собі недостатньо для виправлення зламаних пакетів, дивіться цю відповідь .
Елія Каган

Як додаток - якщо ви передумаєте про те, packageщо призвело до невиконання залежностей, просто зробіть це, sudo apt-get remove packageщоб позбутися від невдалої помилки залежності, а не встановлювати пакети, що виправляють розрив.
користувач1953384

1

Ось де я вважаю це дуже корисним. Я запустив команду dpkg, щоб встановити пару пакунків .deb, але установка не вдалася, оскільки деякі залежності були відсутні.

Я тоді побігла

apt-get -f install

і він встановив саме ті залежності, які були потрібні. Тоді я зміг запустити свою команду dpkg і все спрацювало.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.