Desinstalando todos os programas instalados a partir de uma data específica

Nesse meu primeiro artigo vou mostrar como é possível desinstalar todos os programas instalados no Linux a partir de uma data fornecida pelo usuário. Fiz este procedimento utilizando uma distribuição baseada no Debian, ou seja, só serão desinstalados os pacotes ".deb", porém com alguns ajustes pode ser facilmente adaptado para outra distribuição.

[ Hits: 20.116 ]

Por: ssssssssss em 26/07/2007


Introdução



Apesar do apt-get avisar antes, cuidado ao executar este script, pois dependendo da data informada ou dos pacotes instalados/atualizados ele pode literalmente acabar com seu sistema. Pra evitar isso, certifique-se na hora de confirmar a desinstalação que não hajam pacotes essenciais ao funcionamento do sistema, por exemplo kernel-image ou base-files.

Fique atento também as mensagens que serão geradas pelo apt-get no console avisando do perigo de desinstalar determinado pacote. Se souber o que está fazendo, altere o que for necessário para continuar, caso contrário NÃO EXECUTE ESTE SCRIPT. ;)

Nos sistemas baseados no Debian, ou seja, que utilizam pacotes "*.deb" para instalar programas, todos os pacotes instalados/atualizados/removidos ficam "logados" em um arquivo chamado /var/log/dpkg.log. Este arquivo segue o seguinte formato:

data hora ação <nome_do_pacote> versão

Um exemplo disso:

2007-07-20 01:06:53 install 9menu 1.8-1.1ubuntu1

Aqui foi solicitada a instalação do pacote 9menu às 01:06:53 hs do dia 20/07/2007.

Basicamente o que faremos é ler este arquivo e dele extrair somente o nome dos pacotes instalados após a data que informarmos, os quais serão desinstalados.

Para isso, construiremos um script em awk que retornará os pacotes que deverão ser desinstalados e um comando em shell script que basicamente executará a ação de desinstalar os pacotes que o script anterior retornar.

    Próxima página

Páginas do artigo
   1. Introdução
   2. Mãos à obra...
   3. Considerações finais
Outros artigos deste autor

TORCS – Instalação e criação de um bot simples

Leitura recomendada

Ajustando a hora do micro com extrema precisão

Solução para provedores - Receber aviso no celular quando ocorrer perda de pacote, hosts parados ou pacotes duplicados

gGedit como IDE para COBOL

Automatização de backup

Redundância de links - Mon + Shell Script

  
Comentários
[1] Comentário enviado por comfaa em 08/10/2008 - 10:44h

vlw cara, muito útil !!

abraços


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts