Removendo pacotes não-essenciais no Fedora

Publicado por Davidson Rodrigues Paulo em 13/09/2007

[ Hits: 8.520 ]

Blog: http://davidsonpaulo.com/

 


Removendo pacotes não-essenciais no Fedora



Há alguns meses atrás, logo que comecei a fazer os testes de virtualização com o Xen, houve a necessidade de conseguir um sistema Fedora o mais enxuto possível, com o mínimo de pacotes instalados.

Após queimar a devida quantidade de fosfato, fiz um script que remove todos os pacotes não-essenciais do sistema, deixando apenas a base e aqueles que você quiser.

Segue o script:

#!/bin/bash

LOOP=1

while [ $LOOP -eq 1 ] ; do
  LOOP=0
  List=`rpm -qa | rev | cut -d'-' -f3- | rev`
  List=`echo "$List" | grep -v '^rpm$'`

  if [ -n "$*" ] ; then
    for Arg in $* ; do
      List=`echo "$List" | egrep -v "^${Arg}$"`
    done
  fi

  while read PKG ; do
    rpm -e $PKG 2> /dev/null &&
    LOOP=1 &&
    echo "Pacote $PKG removido"
  done < <(echo "$List")
done

Salve o script em /root/remove e dê permissão de execução:

# chmod u+x /root/remove

Sua sintaxe é:

# /root/remove [pacote1] [pacote2] ... [pacoteN]

Onde pacote1, pacote2 etc são os pacotes que você quer que sejam preservados no sistema além dos que formam a base. Assim, para remover todos os pacotes não-essenciais do sistema exceto yum, kernel e vim-minimal, execute:

# /root/remove yum kernel vim-minimal

Basicamente, o script funciona assim:
  • A variável List recebe todos os pacotes instalados no sistema, exceto o rpm e aqueles especificados na linha de comando;
  • O comando rpm -e é executado para cada pacote da lista. Se um pacote não for necessário por nenhum outro, ele é removido com sucesso e todo o processo é executado novamente;
  • Quando nenhum dos pacotes da lista puder ser removido, o processo chega ao fim.

Depois, se algum pacote estiver faltando, você poderá instalar usando rpm ou yum.

Esse procedimento funciona para qualquer distribuição Linux que utilize o rpm, incluindo Red Hat, CentOS, Mandriva e SUSE.
Outras dicas deste autor

Criando menu para o Fluxbox automaticamente

Colocar arquivos mostrados por um comando em um pacote .tar no Linux

Como desmontar um compartilhamento NFS travado

Fazendo o rpm voltar a funcionar depois de remover o sqlite

Script para manter VPN PPTP ativa

Leitura recomendada

Configuração do Mozilla e Firefox para acesso ao site da Serpro

Configurar clique do tochpad no Slackware 13

Como fazer o Gaim tocar sons no Debian

Problemas com o som no Conectiva Linux 10

Traduzindo o Pardus 2011.2 para português do Brasil

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts