Como remover todos os pacotes i386 do Ubuntu 64bit?

28

Ao longo do tempo eu instalei muitos pacotes i386, que não são mais necessários. Como posso limpar o sistema e ficar apenas com os pacotes amd64?

    
por yossile 15.03.2012 / 19:39

6 respostas

14

Se eles não estiverem no seu caminho, eu os deixarei onde estão.
Se você insistir em apagar, use dpkg -l | grep i386 para criar uma lista de pacotes i386. Você pode excluí-los após verificação cuidadosa com algo como sudo apt-get purge <package-name> .

    
por Henk 15.03.2012 / 19:51
22

As soluções automatizadas superiores são perigosas e nem sempre funcionam (1), então aqui de outra maneira

sudo aptitude purge 'dpkg --get-selections | grep ":i386" | awk '{print }''

ou

sudo apt-get purge 'dpkg --get-selections | grep ":i386" | awk '{print }''

(Tente usar sempre e apenas uma das ferramentas. Como o aptitude é melhor quando está com problemas de dependência, eu prefiro isso.)

Boa ideia também

dpkg --remove-architecture i386

e talvez

dpkg --print-foreign-architectures

(1) Os comandos antigos também listam pacotes tendo apenas i386 em seu nome (embora sejam para arquitetura de 64 bits), a expressão regular não funcionou e o dpkg mostra pacotes que já foram removidos, mas ainda tem arquivos de configuração restantes ( dpkg -l mostra "rc" em vez de "ii" como status).

    
por PythoNic 17.02.2014 / 22:30
21

Eu blitzed todos os meus pacotes de 32 bits assim:

sudo apt-get remove 'dpkg --get-selections | grep i386 | awk '{print }''
    
por Mathnode 15.06.2012 / 11:51
9

Caso alguém esteja se perguntando, há uma maneira muito mais sensata e graciosa de fazer isso. A última resposta anterior espera fazer a mesma coisa, mas essa busca falha, pois as arquiteturas não fazem parte dos nomes dos pacotes, exceto em casos especiais.

como root (ou com sudo) executado:

aptitude remove ~i~ri386

Se você não usa o aptitude sobre o apt-get, faça. É realmente excelente. Você pode encontrar uma lista de termos de pesquisa do aptitude aqui .

    
por Patrick 18.04.2015 / 14:44
6

Aqui está outra forma que é ainda menor risco:

apt-get remove "^.*:i386$"

Isso corresponderá especificamente apenas a pacotes que terminam com ":i386" , que é a convenção de nomenclatura padrão para todos os pacotes Debian i386 architecture.

    
por kevinarpe 09.02.2014 / 12:09
4

O guia multiarca do debian menciona este comando: apt-get purge ".*:<arch>" , que seria assim para i386 :

apt-get purge ".*:i386"

Você pode então remover a arquitetura do dpkg:

dpkg --remove-architecture i386
    
por Francisco Couzo 17.01.2017 / 20:44