Script per la pulizia di ubuntu 8.4 e superiori


Ho trovato Questo script, creato da un gruppo di utenti del forum di ubuntu

#!/bin/bash
#Questo script effettua la manutenzione di un sistema operativo GNU/Linux Ubuntu 8.04 - 8.10

#——————————————————————————————+
# Funzione aggiornamento |
#——————————————————————————————+
function aggiornamento {
echo
echo “********************** INIZIO AGGIORNAMENTO DEL SISTEMA **********************”
echo
echo -n “# Aggiorno gli indici dei pacchetti? ”
read sure
if [[ $sure = “s” ]]
then
sudo apt-get update
echo “* Aggiornamento indici pacchetti…[OK]”
else
echo “* Aggiornamento indici pacchetti…[NOT EXECUTED]”
fi
echo
echo -n “# Aggiorno le chiavi GPG degli indici dei pacchetti? ”
read sure
if [[ $sure = “s” ]]
then
touch err
sudo apt-get update 2>err
num=$(grep ‘NO_PUBKEY’ err | wc -l)
str=$(grep ‘NO_PUBKEY’ err)
tot=$num
if [ $num != 0 ]
then
echo “—RISOLVO NO_PUBKEY—”
for (( i=0 ; i<$num ; i++ ))
do
tmp=${str#*NO_PUBKEY }
key=${tmp:0:16}
str=${str#*NO_PUBKEY}
echo “Aggiungo la chiave:$key”
gpg –keyserver subkeys.pgp.net –recv $key
gpg –export –armor $key | sudo apt-key add –
done
fi
num=0
num=$(grep ‘BADSIG’ err | wc -l)
str=$(grep ‘BADSIG’ err)
tot=$(( $tot + $num ))
if [ $num != 0 ]
then
echo “—RISOLVO BADSIG—”
for (( i=0 ; i<$num ; i++ ))
do
tmp=${str#*BADSIG }
key=${tmp:0:16}
str=${str#*BADSIG}
echo “Aggiungo la chiave:$key”
gpg –keyserver subkeys.pgp.net –recv $key
gpg –export –armor $key | sudo apt-key add –
done
fi
rm err
else
echo “* Aggiornamento chiavi GPG degli indici dei pacchetti…[NOT EXECUTED]”
fi
echo
echo -n “# Aggiorno i pacchetti? ”
read sure
if [[ $sure = “s” ]]
then
sudo apt-get upgrade
echo “* Aggiornamento pacchetti…[OK]”
else
echo “* Aggiornamento pacchetti…[NOT EXECUTED]”
fi
echo
echo -n “# Aggiorno la data e l’ora del sistema? ”
read sure
if [[ $sure = “s” ]]
then
sudo ntpdate it.pool.ntp.org
echo “* Aggiornamento data e ora…[OK]”
else
echo “* Aggiornamento data e ora…[NOT EXECUTED]”
fi
echo -n “# Aggiorno il kernel del sistema? ”
read sure
if [[ $sure = “s” ]]
then
sudo apt-get dist-upgrade -f
echo “* Aggiornamento kernel…[OK]”
else
echo “* Aggiornamento kernel…[NOT EXECUTED]”
fi
echo
echo -n “# Aggiorno l’immagine initramfs del kernel? ”
read sure
if [[ $sure = “s” ]]
then
sudo update-initramfs -u
echo “* Aggiornamento immagine initramfs…[OK]”
else
echo “* Aggiornamento immagine initramfs…[NOT EXECUTED]”
fi
echo
echo -n “# Verifico che non ci siano pacchetti difettosi? ”
read sure
if [[ $sure = “s” ]]
then
sudo apt-get install -f
echo “* Verifica pacchetti difettosi…[OK]”
else
echo “* Verifica pacchetti difettosi…[NOT EXECUTED]”
fi
echo
echo “ATTENZIONE: COMANDO POTENZIALMENTE PERICOLOSO!!”
echo -n “# Aggiorno le configurazioni di GRUB? ”
read sure
if [[ $sure = “s” ]]
then
sudo cp /boot/grub/menu.lst /boot/grub/menu.bak
sudo update-grub
echo “* Backup /boot/grub/menu.lst…[OK]”
echo “* Aggiornamento GRUB…[OK]”
else
echo “* Aggiornamento GRUB…[NOT EXECUTED]”
fi
echo
echo “————————— AGGIORNAMENTO TERMINATO ————————–”
echo
}

#——————————————————————————————+
# Funzione pulizia |
#——————————————————————————————+
function pulizia {
echo
echo “************************* INIZIO PULIZIA DEL SISTEMA *************************”
echo
echo -n “# Rimuovo le dipendenze inutili? ”
read sure
if [[ $sure = “s” ]]
then
sudo apt-get –purge autoremove
echo “* Rimozione dipendenze inutili…[OK]”
else
echo “* Rimozione dipendenze inutili…[NOT EXECUTED]”
fi
echo
echo -n “# Rimuovo la cache dei pacchetti scaricati dai repository obsoleti? ”
read sure
if [[ $sure = “s” ]]
then
sudo apt-get autoclean
echo “* Rimozione cache pacchetti obsoleti…[OK]”
else
echo “* Rimozione cache pacchetti obsoleti…[NOT EXECUTED]”
fi
echo
echo -n “# Rimuovo la cache dei pacchetti scaricati dai repository? ”
read sure
if [[ $sure = “s” ]]
then
sudo apt-get clean
echo “* Rimozione cache pacchetti scaricati…[OK]”
else
echo “* Rimozione cache pacchetti scaricati…[NOT EXECUTED]”
fi
echo
echo -n “# Rimuovo tutti i pacchetti di sistema oramai diventati obsoleti? ”
read sure
if [[ $sure = “s” ]]
then
sudo dpkg –purge `COLUMNS=300 dpkg -l “*” | egrep “^rc” | cut -d\ -f3`
echo “* Rimozione pacchetti obsoleti…[OK]”
else
echo “* Rimozione pacchetti obsoleti…[NOT EXECUTED]”
fi
echo
echo -n “# Elimino il contenuto di /temp? ”
read sure
if [[ $sure = “s” ]]
then
sudo rm -rf /tmp/*
echo “* Eliminazione contenuto /temp…[OK]”
else
echo “* Eliminazione contenuto /temp…[NOT EXECUTED]”
fi
echo
echo -n “# Elimino il contenuto della directory /.thumbnails? ”
read sure
if [[ $sure = “s” ]]
then
sudo rm -rfv ~/.thumbnails/*
echo “* Eliminazione files da /.thumbnails …[OK]”
else
echo “*Eliminazione files da /.thumbnails …[NOT EXECUTED]”
fi
echo
echo -n “# Effettuo una ricerca dei residui di files? ”
read sure
if [[ $sure = “s” ]]
then
find $HOME -name “*~”
find $HOME -name “Desktop.ini”
find $HOME -name “Thumbs.db”
echo -n “# Rimuovo questi residui di file? ”
read sure
if [ $sure == “s” ]
then
find $HOME -name “*~” -print0|xargs -0 /bin/rm -f
find $HOME -name “Desktop.ini” -print0|xargs -0 /bin/rm -f
find $HOME -name “Thumbs.db” -print0|xargs -0 /bin/rm -f
echo “* Eliminazione residui…[OK]”
else echo “* Eliminazione residui…[NOT EXECUTED]”
fi
else echo “* Ricerca residui di files…[NOT EXECUTED]”
fi
echo
echo -n “# Elimino il contenuto del Cestino? ”
read sure
if [[ $sure = “s” ]]
then
sudo rm -rfv ~/.local/share/Trash/*
echo “* Eliminazione files da /Trash …[OK]”
else
echo “* Eliminazione files da /Trash …[NOT EXECUTED]”
fi
echo
echo -n “# Pulisco i documenti recenti? ”
read sure
if [[ $sure = “s” ]]
then
sudo mv ~/.recently-used.xbel .recently-used.xbel.bak
sudo mv ~/.recently-used .recently-used.bak
touch ~/.recently-used.xbel
echo “\n\n
” > ~/.recently-used.xbel
echo “* Pulizia documenti recenti…[OK]”
else
echo “* Pulizia documenti recenti…[NOT EXECUTED]”
fi
echo
echo
echo “Per l’esecuzione di questo comando verrà installato il pacchetto deborphan”
echo “ATTENZIONE: COMANDO POTENZIALMENTE PERICOLOSO!!”
echo -n “# Rimuovo le librerie orfane? ”
read sure
if [[ $sure = “s” ]]
then
sudo apt-get -y install deborphan
sudo apt-get –purge remove `deborphan`
echo “* Rimozione librerie orfane…[OK]”
else
echo “* Rimozione librerie orfane…[NOT EXECUTED]”
fi
echo
echo “Per l’esecuzione di questo comando verrà installato il pacchetto deborphan”
echo “ATTENZIONE: COMANDO POTENZIALMENTE PERICOLOSO!!”
echo -n “# Rimuovo le librerie orfane di sviluppo? ”
read sure
if [[ $sure = “s” ]]
then
sudo apt-get -y install deborphan
sudo apt-get –purge remove `deborphan –libdev`
echo “* Rimozione librerie orfane…[OK]”
else
echo “* Rimozione librerie orfane…[NOT EXECUTED]”
fi
echo
echo “—————————— PULIZIA TERMINATA —————————–”
echo
}

#——————————————————————————————+
# Programma principale |
#——————————————————————————————+
echo “+============================================================================+”
echo “| MANUTENZIONE DI UBUNTU |”
echo “| |”
echo “| Questo script effettua una manutenzione guidata del sistema |”
echo “| per rispondere affermativamente alle domande che verranno |”
echo “| poste premete s e confermate premendo il tasto |”
echo “| per saltare la domanda premete |”
echo “| |”
echo “+============================================================================+”
echo
echo -n “~~~ ESEGUIRE I COMANDI PER L’AGGIORNAMENTO DEL SISTEMA? ”
read sure
if [[ $sure = “s” ]]
then
aggiornamento
else
echo “*** Aggiornamento del sistema…[NOT EXECUTED]”
fi
echo
echo -n “~~~ ESEGUIRE I COMANDI PER LA PULIZIA DEL SISTEMA? ”
read sure
if [[ $sure = “s” ]]
then
pulizia
else
echo “*** Pulizia del sistema…[NOT EXECUTED]”
fi
echo
echo -n “~~~ E’ CONSIGLIABILE RIAVVIARE IL SISTEMA. RIAVVIARE? ”
read sure
if [[ $sure = “s” ]]
then
sudo reboot
else
echo “*** Riavvio del sistema…[NOT EXECUTED]”
fi
echo
read -p “Premi per uscire”

Istruzioni per il Funzionamento;

-Copiare il contenuto nell’editor di testo (applicazioni–>Accessori–>Editor di testo)

-Salvare il file sulla scrivania

-Propietà–>Modificare i permessi per scrittura e lettura, inoltre con la 9.4 è necessario mettere la spunta alla casella “Consentire l’esecuzione del file come programma”

-Cliccarci 2 volte e selezionare “Esegui nel Terminale”

-Ora per rispondere positivamente premete   s   per rispondere negativamente   n   alcune operazioni potrebbero causare danni al pc, ma le seguenti voci saranno anticipate da un messaggio di avvertimento

Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...