Com o tempo, instalei muitos pacotes i386, dos quais não preciso mais. Como posso limpar o sistema e permanecer apenas com os pacotes amd64?
package-management
64-bit
uninstall
32-bit
yossile
fonte
fonte
Respostas:
Se eles não estiverem no seu caminho, eu os deixaria onde estão.
Se você insistir em excluir, use
dpkg -l | grep i386
para criar uma lista de pacotes i386. Você pode excluí-los após uma verificação cuidadosa com algo parecidosudo apt-get purge <package-name>
.fonte
apt-get purge <package-name>
ainda deve funcionar, no entanto.dpkg -l | grep amd64
recebi um pacote i386 na minha lista, ou sejaamd64-microcode 3.20160316.3 i386
, acho que o ':' no padrão grep é importante ! (dpkg -l | grep ":amd64"
)As soluções automatizadas superiores são perigosas e nem sempre estão funcionando (1), então aqui outra maneira
ou
(Tente usar sempre e apenas uma das ferramentas. Como o aptitude é melhor quando há problemas de dependência, eu prefiro isso.)
Boa ideia também
e talvez
(1) Os comandos anteriores também listam pacotes com 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 têm arquivos de configuração ( dpkg -l mostra "rc" em vez de "ii" como status).
fonte
awk
qualquer maneira, você também pode se livrar dagrep
invocação. Além disso,$()
é preferível em vez de backticks. Acabei de me livrar dos meus pacotes i386 usando este comando com base no comando que você deu:sudo apt purge $(dpkg --get-selections | awk '$1 ~ /:i386$/ { print $1 }')
Eu blitzed todos os meus pacotes de 32 bits como este:
fonte
dpkg -l | grep i386
para verificar se os pacotes ainda existem alguma idéia, também +1 para o comentário anterior e meu palpite está relacionado às técnicas de script de shellsudo dpkg --remove-architecture i386
Caso alguém esteja se perguntando, há uma maneira muito mais sã e graciosa de fazer isso. A última resposta anterior espera fazer o mesmo, mas essa pesquisa falha porque as arquiteturas não fazem parte dos nomes dos pacotes, exceto em casos especiais.
como root (ou com sudo) execute:
Se você ainda não usa o aptitude sobre o apt-get, faça. É realmente excelente. Você pode encontrar uma lista dos termos de pesquisa do aptitude aqui .
fonte
Aqui está outra maneira que apresenta um risco ainda menor:
apt-get remove "^.*:i386$"
Isso corresponderá especificamente apenas aos pacotes que terminam com
":i386"
, que é a convenção de nomenclatura padrão para todos osi386
pacotes Debian de arquitetura.fonte
sudo apt-get purge .*:i386
O guia multiarch do debian menciona este comando :,
apt-get purge ".*:<arch>"
que seria assim parai386
:Você pode remover a arquitetura do dpkg:
fonte