Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
Linux: Meu primeiro screenshot
Por c3s4rbs
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha



Scripts

Linux user

Publicado por Alysson em (última atualização em 15/07/2012)   [ 1276 hits ]

Login: lacabeza, 8670 pontos

Download:


Descrição

Script para remoção de kernels antigos utilizando interface gráfica Zenity.
Primeiro exibe a lista de kernels instalados, com exceção do kernel atualmente em uso.
Após selecionados, exibe uma confirmação com os itens selecionados antes de iniciar a remoção.


[ Download: remove_kernel.sh ]   [ Enviar nova versão ]

[ Esconder código-fonte ]

#!/bin/bash
# Remove kernels antigos com zenity.
#   Alysson Gonçalves
#   agalysson@gmail.com
#
# Referências:
#   http://linux.byexamples.com/archives/265/a-complete-zenity-dialog-examples-2/  
#   http://ubuntugenius.wordpress.com/2011/01/08/ubuntu-cleanup-how-to-remove-all-unused-linux-kernel-headers-images-and-modules/
#  

# Exige permissão de administrador
if [ `id -u` != 0 ]; then
    echo É preciso ser root.
    exit 1
fi

# Obtem a lista de kernels instalados e não usados
lista=`dpkg -l 'linux-*' | sed '/^ii/!d;/'"$(uname -r | cut -d- -f-2)"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/FALSE \1/;/[0-9]/!d'`

if [ -z "$lista" ]; then
    `which zenity` --info --title="Informação" --text="Não há kernels antigos instalados"
    exit 0
fi

# Variavel com o caminho absoluto do zenity e alguns parâmetros
zenity=`which zenity`" --width=400 --height=300 --window-icon=/usr/share/icons/hicolor/48x48/status/aptdaemon-working.png --list --checklist --column Selecione --column Kernel --separator=\n"

# Exibe a lista de kernels que podem ser removidos.
selecionado="`$zenity --title="Selecione os kernels a serem removidos" --text="A versão atual do kernel é: $(uname -r)\nLista de kernels antigos" $lista | sed 's/^/TRUE /g'`"

# Se nenhum for selecionado, sai
[ -z "$selecionado" ] && exit 0

# Pede uma confirmação antes de prosseguir com a remoção
remover="`$zenity --title="Confirme a seleção" --text="Deseja remover os seguintes kernels?" --hide-column=1 $selecionado`"

# Se o "OK" da confimação não for pressionado, sai
[ -z "$remover" ] && exit 0

# Variavel com o caminho absoluto do zenity e alguns parâmetros
zenity=`which zenity`" --width=400 --progress --pulsate --auto-close --no-cancel --window-icon=/usr/share/icons/hicolor/48x48/status/aptdaemon-working.png"

# Executa a remoção dos pacotes
apt-get purge -y $remover | $zenity --title="Removendo pacotes"



Scripts recomendados
   Script Linux recomendado Proc_del - Desinstalar programas compilados
   Script Linux recomendado Limpando Cache Squid
   Script Linux recomendado Repositório Local usando Yum
   Script Linux recomendado Limitando Banda
   Script Linux recomendado Criação de usuario / gerando senha automatica

Comentários
[1] Comentário enviado por RW em 15/07/2012 - 12:59h:

Excelente, é de scripts assim que precisamos.

Valeu.

Abs.


[2] Comentário enviado por klebsonp em 15/07/2012 - 21:04h:

Esqueceu de dizer que o script só funciona em distribuições Debian-like.


[3] Comentário enviado por lacabeza em 16/07/2012 - 00:49h:

É verdade, pequei nesse ponto.
Confesso que nem me passou na cabeça sobre adaptar para outras distros... por não usar outras distros.

xD


[4] Comentário enviado por albfneto em 16/07/2012 - 12:15h:

script bom. favoritado.



Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.