Co dokładnie robi sudo apt-get -f install?

41

Widziałem to wcześniej. Zastanawiam się, co to właściwie robi?

TheShadowFog
źródło

Odpowiedzi:

39

Od 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.
Izajasza
źródło
19
Możesz za to podziękować panu. Kiedy masz zepsuty pakiet, to tak, jakbyś miał kamień w bucie ... i jesteś w maratonie ... z niedźwiedziami jadącymi na rekinach na wielkich pająkach. Ale dzięki temu zepsute rzeczy zostają naprawione.
Luis Alvarado,
2
W sporadycznych sytuacjach sudo apt-get -f install, gdy samo w sobie nie jest wystarczające, aby naprawić uszkodzone pakiety, zobacz tę odpowiedź .
Eliah Kagan,
Tylko jako dodatek - jeśli zmienisz zdanie na temat tego, packageco spowodowało niezaspokojone zależności, po prostu zrób sudo apt-get remove packageto, aby pozbyć się niezaspokojonego błędu zależności i nie instalować pakietów naprawiających przerwanie.
user1953384,
1

Oto, gdzie uważam to za bardzo przydatne. Uruchomiłem polecenie dpkg, aby zainstalować kilka pakietów .deb, ale instalacja nie powiodła się, ponieważ brakowało niektórych zależności.

Wtedy pobiegłem

apt-get -f install

i zainstalował dokładnie potrzebne zależności. Byłem wtedy w stanie ponownie uruchomić polecenie dpkg i wszystko działało.

Czad
źródło