wie man arm64 in apt

13
W: Invalid 'Date' entry in Release file /var/lib/apt/lists/_var_cuda-repo-8-0-local_Release
N: Skipping acquire of configured file 'non-free/binary-arm64/Packages' as repository 'http://repository.spotify.com stable InRelease' doesn't support architecture 'arm64'
E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/xenial/main/binary-arm64/Packages  404  Not Found [IP: 91.189.88.161 80]
E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/xenial-updates/main/binary-arm64/Packages  404  Not Found [IP: 91.189.88.161 80]
E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/xenial-backports/main/binary-arm64/Packages  404  Not Found [IP: 91.189.88.161 80]
E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/xenial-security/main/binary-arm64/Packages  404  Not Found [IP: 91.189.88.161 80]
E: Some index files failed to download. They have been ignored, or old ones used instead.

Nachdem ich Jetpack für Jetson tx1 installiert habe, versucht mein Ubuntu ständig, Arm-Updates abzurufen. Gibt es eine Möglichkeit, dies zu deaktivieren?

BEARBEITEN:

$dpkg --print-architecture
amd64

$dpkg --print-foreign-architectures
i386
arm64

Ich sehe, dass arm64 in fremden Architekturen enthalten ist. Wie entferne ich es?

MoneyBall
quelle
1
Bitte addieren Sie die Ausgabe von dpkg --print-architectureund dpkg --print-foreign-architectures.
Byte Commander
Ich stand vor dem gleichen Problem. Dieser Link hat mir geholfen, meine arm64-Pakete zu entfernen. und dann die Lösung von Byte Commander gegeben
Raushan Kumar

Antworten:

16

Sie können eine fremde Architektur entfernen, indem Sie ausführen

sudo dpkg --remove-architecture arm64

Danach müssen Sie Ihre Softwarelisten aktualisieren.

sudo apt update

Wenn weiterhin Fehler oder Warnungen angezeigt werden, können Sie versuchen, alle Ihre Softwarelisten zu löschen und sie vollständig vom Server herunterzuladen, um sicherzustellen, dass nichts Altes mehr übrig ist. Beachten Sie, dass der vollständige Download etwas länger dauert als üblich:

sudo rm -rf /var/lib/apt/lists
sudo apt update
Byte Commander
quelle
Ich bekomme, dpkg: error: cannot remove architecture 'arm64' currently in use by the databasewas seltsam ist, weil ich nicht glaube, dass ich es benutze ...
MoneyBall
@MoneyBall Kannst du die Ausgabe von dpkg -l | grep arm64zu deiner Frage hinzufügen ? Es scheint, als wären einige arm64-Pakete installiert, die Sie zuerst entfernen müssten.
Byte Commander
Ah Mist ... Ich habe arm64 cross compiler ... aber ich habe erfolgreich armhf entfernt, was ein Schmerz war. Vielen Dank.
MoneyBall
Weißt du, wie ich apt-get update machen kann, um das Abrufen von arm64-Paketen zu stoppen? Wie werde ich die 404 nicht gefundenen Fehler los?
MoneyBall
1
Gibt es eine Möglichkeit, den arm64 aus der Datenbank zu entfernen, ich habe die gleichen Probleme. BEARBEITEN sudo dpkg --force-architecture --remove-architecture arm64 und sudo rm -rf /var/lib/apt/listsmit sudo apt updatebehoben.
weezle1234
7

Beim Arbeiten mit jetson-tx2 arm64 ist das gleiche Problem aufgetreten. Dieses Handbuch bezieht sich auf die Lösung im erweiterten Setup-Szenario. Es stellt sich heraus, dass Sie die Architektur nicht entfernen können, ohne Pakete zu entfernen.

Dies ist nützlich, wenn eine fremde Architektur hinzugefügt wurde, wodurch "404 Not Found" -Fehler angezeigt werden, wenn die Repository-Metadaten aktualisiert werden. Wenn Sie beispielsweise ein Repository nur auf die Architekturen amd64 und i386 beschränken möchten, sieht es folgendermaßen aus:

deb [arch=amd64,i386] <url>

Geben Sie die obige Option für alle Repositorys in "sudo gedit /etc/apt/sources.list" an.

Jetzt "sudo apt update" und es wird nur von amd64 und i386 geholt.

Dwijay Bane
quelle
Das hat bei mir am 18.04.2 geklappt. Vielen Dank! Ich wünschte, ich könnte zweimal stimmen :).
Donnerstag,
1

Ich hatte das gleiche Problem und als Byte Commander erwähnt, wenn Sie nicht direkt ausführen können

sudo dpkg --remove-architecture arm64

Sie haben eine Reihe von Cross-Compile-Paketen für arm64 installiert und müssen diese ausführen, bevor Sie arm64 entfernen. Führen Sie die folgenden Befehle in der angegebenen Reihenfolge aus:

sudo apt autoremove 
sudo dpkg --remove-architecture arm64
sudo apt-get update 
Hesham
quelle
0

Das gleiche ist mir passiert. Ich konnte und apt updatekonnte nicht apt upgrade, da arm64-Paketaktualisierungen im 404-Fehler fehlgeschlagen sind.

dpkg gab mir die Ausgabe:

$ dpkg --print-foreign-architectures
i386
arm64

Ein Blick auf meine installierten arm64-Pakete zeigte, dass Jetpack einige Cross-Compiler-Komponenten installiert hat:

$ dpkg -l | grep arm64
ii  cuda-cudart-cross-aarch64-9-0:arm64  9.0.252-1           arm64   CUDA Runtime cross-aarch64 dev links, headers
ii  libc6-arm64-cross                    2.23-0ubuntu3cross1 all     GNU C Library: Shared libraries (for cross-compiling)
ii  linux-libc-dev-arm64-cross           4.4.0-18.34cross1   all     Linux Kernel Headers for development (for cross-compiling)
...

Meine Lösung:

Ich habe gerade den Jetpack Uninstaller ausgeführt, der alle diese Cross-Compiling-Pakete sowie die arm64-Architektur löschte:

$ ./JetPack_Uninstaller

Danach konnte ich mich wieder aptrichtig bedienen .

Sparkofska
quelle
Wo ist der JetPack_Uninstaller?
CSG