Ich versuche, ein Datei-Repository zum Aktualisieren von Linux / Ubuntu auf einem nicht verbundenen Computer zu verwenden. Die Architektur für diese Maschine (uname -a):
x86_64 GNU/Linux
Die Ergebnisse von dpkg --printarchitecture
sind:
amd64
Es handelt sich um einen Trusty Tahr amd64-Computer, und dies wird beispielsweise in der Datei aptitude sources.list ausdrücklich angegeben. Außerdem wird in "Über diesen Computer" in Ubuntu speziell angegeben, dass der Computer 64-Bit ist. Also habe ich die amd64-Pakete auf dem Computer installiert. Wenn ich es jedoch versuche apt-get update
, erhalte ich Fehler wie:
W: Failed to fetch file:/var/spool/apt-mirror-trusty/mirror/archive.ubuntu.com/ubuntu/dists/trusty/main/binary-i386/Packages File not found
Mit anderen Worten, obwohl es sich um eine 64-Bit-Maschine handelt, versucht apt unerklärlicherweise, i386-Pakete zu lesen. Warum macht es das und wie kann ich dafür sorgen, dass die 64-Bit-Pakete verwendet werden?
Beachten Sie, dass in sources.list nichts vorhanden ist, das i386 angibt.
Die einzige unkommentierte Zeile in der Datei sources.list lautet:
deb file:///var/spool/apt-mirror-trusty/mirror/archive.ubuntu.com/ubuntu trusty main restricted universe multiverse
quelle
dpkg
ist standardmäßig so konfiguriert, dass amd64 und dessen 32-Bit-Geschwister akzeptiert werden. Ich sage "vielleicht", weil ich mit diesen Informationen keine offizielle Dokumentation gefunden habe. Nur meine 2 Cent.Antworten:
Ist bei Ubuntu-
amd64
Installationeni386
standardmäßig als zusätzliche Architektur aktiviert.apt
& co. Erwarten Sie, dass Repositorys alle konfigurierten Architekturen bereitstellen, was den angezeigten Fehler verursacht.Da Ihr Mirror nur
amd64
Pakete enthält, sollten Sie ihn als solchen kennzeichnen:quelle
dpkg --print-foreign-architectures
Zeigt alle Architekturen an, für die die Multiarch-Unterstützung aktiviert ist. Ich hatte das gleiche Problem und (wahrscheinlich nicht überraschend) den oben genannten Befehl gemeldet:i386
[arch=amd64]
jededeb
Zeile zu schreiben ist keine gute Lösung. Dies erklärt , wie es geht: superuser.com/a/714392/376867i386
des Umgangs mit einem lästigen Repository ist ziemlich übertrieben. Beachten Sie, dass wenn Sie mehrere Repositorys haben, die das in der Frage beschriebene Problem verursachen, dies auf ein Problem im Feld Architekturen der Repositorys hinweist , nicht auf die lokale Konfiguration.