Was macht apt-get --fix-missing und wann ist es nützlich?

Was macht apt-get --fix-missing und wann ist es nützlich?

Aus der Manpage:

-m, --ignore-missing, --fix-missing
  Ignore missing packages; if packages cannot be retrieved or fail the integrity 
  check after retrieval (corrupted package files), hold back those packages and 
  handle the result. 

  Use of this option together with -f may produce an error in some situations. If a 
  package is selected for installation (particularly if it is mentioned on the 
  command line) and it could not be downloaded then it will be silently held back. 

 Configuration Item: APT::Get::Fix-Missing.

Das ist verwirrend:

  1. Wie können „Fehlendes ignorieren“ und „Fehlendes beheben“ Synonyme für dieselbe Option sein?
  2. Was bedeutet „zurückhalten“ in diesem Zusammenhang?
  3. Was bedeutet „mit dem Ergebnis umgehen“?

Und in welcher Situation ist es überhaupt nützlich? Wenn Sie versuchen, ein Paket zu installieren, das nicht im Apt-Index enthalten ist, erhalten Sie diese Meldung:

E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?

Sind die beiden Vorschläge ( apt-get update, apt-get install --fix-missing...) überhaupt gleichwertig?

Antwort1

Okay, der Reihe nach:

  • (1)-Mignorierenfehlenoder reparierenfehlenPakete (im Gegensatz zu-F gebrochenPakete). Diese Optionen sindSynonymefür die gleiche Option. (Da es von hier aus ignoriert wird, nimmt es seine eigeneSeltsamkeit :-) )
  • (2-3) Wenn Sie mit apt-get upgradeoder mit installieren/aktualisieren apt-get install somepackage, versucht apt normalerweise, Abhängigkeiten zu aktualisieren. Das bedeutet, dass es feststellen kann, dass einige Pakete neue oder aktualisierte Versionen vorhandener Pakete benötigen, und so weiter in einer Kaskade von Abhängigkeiten. Wenn einige dieser Pakete fehlen oder die Integritätsprüfung nicht bestehen, scheint es aussetzendieses Paket und möchte, dass Sie zuhandhabendas Ergebnis nach derHandle-Methodedes erforderlichen Pakets, wenn möglich. Oft wird die Installation dieses Pakets dadurch gestoppt.
  • (4) Mit apt-get updateladen Sie herunter, was zum Neuaufbau der Abhängigkeitsliste nötig ist.
    Danach können Sie es apt-get install --fix-missingerneut versuchen, in der Hoffnung, dass die aktualisierte Liste das Problem von selbst behebt.
    Dies kann manchmal sehr nützlich sein, etwa wenn Sie eine Quelle für Pakete in Ihrem hinzufügen /etc/atp/sources.listoder wenn die Paketindexdateien aktualisiert wurden.

Nicht alle Programme, die Sie unter Ubuntu verwenden können, stammen aus den offiziellen Ubuntu-Repositories und werden mit denselben Versionen aktualisiert – das kommt selten vor.

Darüber hinaus gibt es viele Gründe, warum eine Installation abrupt unterbrochen werden kann (ein Kill-Signal, ein Stromausfall, ein Fehler beim Grafiktreiber usw.). In solchen Situationen funktioniert es möglicherweise nicht, sodass Sie das Problem zunächst mit oder mithilfe einiger Befehle apt-get updatebeheben müssen . apt-get install --fix-missingdpkg

apt-get install --fix-missingSie können es als eine leichtere und benutzerfreundlichere Version von Befehlen wie dpkg-reconfigure --alloder sehen dpkg.

verwandte Informationen