dpkg: Fehler: Die derzeit von der Datenbank verwendete Architektur 'i386' kann nicht entfernt werden

11

Ich habe diesen Befehl verwendet, um i386 arch hinzuzufügen:

sudo dpkg --add-architecture i386

Und sofort danach, ohne irgendwelche Pakete zu installieren, habe ich versucht, den i386-Bogen wie folgt zu entfernen:

sudo dpkg --remove-architecture i386

Und ich habe den Fehler bekommen:

dpkg: error: cannot remove architecture 'i386' currently in use by the database

Lösungen, die ich bisher gesehen habe, umfassen das Entfernen von i386-Paketen. Ich habe keine installiert. Die installierten sind für die Funktionsweise des Betriebssystems von entscheidender Bedeutung. Was mache ich?

BEARBEITEN, BITTE LESEN SIE DIE FOLGENDEN, UM ZERSTÖRUNG IHRES Betriebssystems ZU VERMEIDEN:

Es stellt sich heraus, dass 64-Bit-Linux-Betriebssysteme bereits den i386-Bogen enthalten, sodass der Befehl sudo dpkg --add-architecture i386nichts wirklich getan hat.

Daka
quelle

Antworten:

7

Bei einer amd64-Installation (64-Bit-PC) ist die i386-Architektur (32-Bit-PC) standardmäßig aktiv. Aus Ihrer Liste geht hervor, dass Sie gerade die 32-Bit-Pakete für Wine verwendet haben. Wine benötigt eine Reihe von 32-Bit-Bibliotheken, um 32-Bit-Windows-Anwendungen auszuführen. Sie können die i386-Architektur nur entfernen, wenn Sie den 32-Bit-Wine deinstallieren. Aber es macht keinen Sinn, dies zu tun: Es ist nichts Falsches daran, die i386-Architektur zu aktivieren.

Gilles 'SO - hör auf böse zu sein'
quelle
24

Lauf

dpkg --get-selections | awk '/i386/{print $1}'

Und wenn Sie mit der Entfernung zufrieden sind, rennen Sie

apt-get remove --purge `dpkg --get-selections | awk '/i386/{print $1}'`

Und dann versuchen Sie es erneut

dpkg --remove-architecture i386
Steve
quelle
2
Vielen Dank dafür, sehr nützlich! Wissen Sie, ob dies unter Ubuntu 16.04 64-Bit sicher ist? Ich frage, weil ich eine lange Liste von Paketen sehe und mir Sorgen mache, dass etwas schief gehen könnte, wenn ich sie alle entferne
sunyata
2
@sunyata Wenn Ihr Ziel darin besteht, den i386 von Ihrem System zu entfernen, ist dies der Weg: Entfernen Sie alle i386-Pakete und dann die Architektur.
Braiam
Das hat mir geholfen. Nachdem ich den i386 entfernt hatte, konnte ich Firefox aktualisieren. Vielen Dank.
Makkasi