CentOS: Removendo pacotes 32-bits nos sistemas 64-bits
Ok ok, juro que esta vai ser uma dica rápida, mas bastante útil! Logo quando surgiu os computadores de arquitetura 64-bits, o Linux foi um dos primeiros sistemas operacionais a suportar a arquitetura completamente. Desde então, o uso dessa arquitetura aumentou bastante.
Só pelo título, vai vir gente aqui falando: se eu remover todos os pacotes 32-bits, algumas coisas que dependem disso (como Flash, plugin de Java e uma série de “probleminhas“) não irão mais funcionar! É por isso que até hoje a gente vê que as distribuições em versão 64-bits mantém pacotes 32-bits para compatibilidade.
Na verdade, minha opinião pessoal, ou seja, Hugo aqui falando, é que instalar uma versão 64-bits em um desktop gera mais problemas do que solução. Eu particularmente prefiro instalar 32-bits e ter tudo funcionando sem dor de cabeça, perdendo um pouco de desempenho (tá, em um desktop geralmente não se tem muitos GB de RAM, e também não se fica compilando coisas toda hora, então a perda de desempenho não é tããão grande assim).
Só que em servidores é bem diferente. Eu não vou usar essas frescuras que dão problema, então eu quero um sistema verdadeiramente 64-bits! Para isso eu preciso remover todos os pacotes que não são 64-bits, e o sistema tem que continuar funcionando direitinho.
Neste caso, essa série de comandos depois da instalação serve para o propósito, lembrando que isto foi testado na distribuição CentOS 5.3, o que significa que também foi testado no RHEL e dá certo.
cd /root
rpm -qa --queryformat "%{name}.%{arch}\n" | grep i386 > pacotes-i386.txt
for i in `cat pacotes-i386.txt`; do yum -y remove $i; done
rpm -qa --queryformat "%{name}.%{arch}\n" | grep i686 > pacotes-i686.txt
for i in `cat pacotes-i686.txt`; do yum -y remove $i; done
rm -f pacotes-i386.txt pacotes-i686.txt
Explicando os comandos acima:
- O rpm -qa junto com o parâmetro –queryformat pega todos os pacotes que tem como arquitetura o i386. O resultado vai pro arquivo pacotes-i386.txt.
- Para cada linha deste arquivo, eu removo-o com o yum, removendo também todas as suas dependências.
- Faço a mesma coisa dos passos 1 e 2, só que agora para pacotes i686.
- Removo as listagens dos pacotes.
Simples e eficiente. Dá para incrementar o script, mas a idéia não seria essa. Espero que seja útil!
Gostou?
Imprimir esta página
Leia também:
- Gerenciador de Pacotes: yum
- Gerenciador de Pacotes: apt
- Fazendo verificação automática dos sistemas de arquivos
- RPM – RPM Package Manager
- Comandos Linux






05 de fev de 2010 em 1:21 pm
Grande Hugo Cisneiros,
tinha sumido e retornou das cinzas ou eu é que só agora tô vendo ele reescrever desde que dava dicas de Linux desde o tempo do Guarani, pelo menos para mim. Não lembro onde (Forum do UOL) mas sei que ajudou muita gente a compilar kernel “from the scratch”.
Tava procurando pra que serve o download do WordPress, já que eu achava que era só um blog.
Ah, já tentou compilar o Metisse no MacOs X (embora fuja do escopo do OpenSource…)
Forte abraço.
BKC Jr
(Bemildo)
04 de mar de 2010 em 8:29 am
Muito bom!!
Parabéns!