09 Febbraio, 2012, 21:01:15 *
Benvenuto! Accedi o registrati.
Hai dimenticato l'e-mail di attivazione?

Accesso con nome utente, password e durata della sessione
Notizia: Eletto il nuovo Consiglio della Comunità italiana di Ubuntu. Per maggiori informazioni, consultare l'annuncio.
 
   Indice   FAQ Aiuto Regolamento Ricerca Accedi Registrati  

Wiki
Programmazione   •   Editor di Testo   •   Linguaggio Bash
Pagine: 1 ... 23 24 [25] 26 27 ... 55   Vai giù
  Stampa  
Autore Discussione: Script Pulizia Ubuntu Tools - Giugno 2011  (Letto 133306 volte)
0 Utenti e 2 Utenti non registrati stanno visualizzando questa discussione.
SAKO
Coraggioso Chiacchierone
*
Non Connesso Non Connesso

Messaggi: 528

Media messaggi



Mostra profilo WWW
« Risposta #480 inserita: 30 Maggio, 2009, 13:24:02 »

Ho perso un po' di tempo a guardare il codice dello script e alla fine ho pensato di integrarlo con zenity in modo da fornire una gui minimale allo script. Non so se può essere utile a qualcuno, ma per adesso l'interfaccia fornita con buc non mi soddisfa e lo script lanciato dal teminale costringe a premere s e n più volte....non ho inserito tutti i comandi presenti nello script originale (perchè non tutti mi interessavano personalmente...) ma una volta creato un lanciatore questo è il risultato che si ottiene.




Se a qualcuno interessa possiamo anche aggiungere altri comandi e migliorarla, vi lascio il codice così come l'ho modificato. Zenity è già presente in ubuntu così non c'è bisogno di installare niente (anche se il codice effettua alcuni controlli).

Codice:
#!/bin/bash

testroot=$(whoami)

if [ "$testroot" = "root" ]; then

testzenity=`which zenity`

if [ "$testzenity" = "" ]; then
apt-get -y -q install zenity
fi

Aggiornamento () {

ans=$(zenity  --width=440 --height=250 --list  --separator=$'\n' --text "Selezionare gli elementi che si desidera aggiornare:" --checklist  --column "Pick" --column "options" FALSE "indici-pacchetti" FALSE "chiavi-GPG" FALSE "pacchetti" FALSE "pacchetti-difettosi");

for opt in ${ans}; do

        if [ "$opt" = "indici-pacchetti" ]; then
                  sudo apt-get update | zenity --progress --pulsate --text="Aggiorno gli indici dei pacchetti..."
        fi
        if [ "$opt" = "chiavi-GPG" ]; then
                  touch err
  sudo apt-get update 2>err | zenity --progress --pulsate --text="Aggiornamento chiavi GPG in corso..."
    num=$(grep 'NO_PUBKEY' err | wc -l)
  str=$(grep 'NO_PUBKEY'  err)
  tot=$num
  if [ $num != 0 ]
  then
  zenity --info --title="Ubuntu Cleaner" --text="---RISOLVO NO_PUBKEY---"
  for (( i=0 ; i<$num ; i++ ))   
  do
  tmp=${str#*NO_PUBKEY }
  key=${tmp:0:16}
  str=${str#*NO_PUBKEY}
          zenity --info --title="Ubuntu Cleaner" --text="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
  for (( i=0 ; i<$num ; i++ ))   
  do
  tmp=${str#*BADSIG }
  key=${tmp:0:16}
  str=${str#*BADSIG}
  zenity --info --title="Ubuntu Cleaner" --text="Aggiungo la chiave:$key"
  gpg --keyserver subkeys.pgp.net --recv $key
  gpg --export --armor $key | sudo apt-key add -
  done
  fi
  rm err
  zenity --info --title="Ubuntu Cleaner" --text="Chiavi GPG aggiornate"
          fi

if [ "$opt" = "pacchetti" ]; then
                sudo apt-get upgrade | zenity --progress --pulsate --text="Aggiorno i pacchetti..."
fi

        if [ "$opt" = "pacchetti-difettosi" ]; then
                sudo apt-get install -f | zenity --progress --pulsate --text="Correggo i pacchetti difettosi..."
        fi

done
mainmenu
}


Pulizia () {

zenity --question --text "Vuoi eseguire tutti i comandi per la pulizia del sistema?"
if [ $? -eq 0 ]; then
sudo apt-get -y install deborphan

(sudo apt-get --purge autoremove && sudo apt-get autoclean && sudo apt-get clean && sudo apt-get -y --purge remove `deborphan` && sudo apt-get -y --purge remove `deborphan --libdev` && sudo dpkg --purge `COLUMNS=300 dpkg -l "*" | egrep "^rc" | cut -d\  -f3`) | zenity --progress --pulsate --text="Pulizia del sistema in corso..."
mainmenu
exit 0

else
ans=$(zenity  --width=440 --height=300  --list  --separator=$'\n' --text "Selezionare gli elementi del sistema su cui si desidera effettuare una pulizia:" --checklist  --column "Pick" --column "options" FALSE "dipendenze-inutili" FALSE "cache-pacchetti-obsoleti" FALSE "cache-pacchetti-repository" FALSE "pacchetti-obsoleti" FALSE "librerie-orfane" FALSE "librerie-orfane-sviluppo");

for opt in $ans; do

if [ "$opt" = "dipendenze-inutili" ]; then
                sudo apt-get --purge autoremove | zenity --progress --pulsate --text="Rimuovo dipendenze inutili..."

fi
if [ "$opt" = "cache-pacchetti-obsoleti" ]; then
sudo apt-get autoclean | zenity --progress --pulsate --text="Rimozione cache pacchetti obsoleti..."

        fi
        if [ "$opt" = "cache-pacchetti-repository" ]; then
                sudo apt-get clean | zenity --progress --pulsate --text="Rimozione cache pacchetti scaricati..."

        fi
if [ "$opt" = "pacchetti-obsoleti" ]; then
                sudo dpkg --purge `COLUMNS=300 dpkg -l "*" | egrep "^rc" | cut -d\  -f3`
zenity --info --title="Ubuntu Cleaner" --text="Pacchetti obsoleti rimossi"
        fi
       
if [ "$opt" = "librerie-orfane" ]; then

zenity --question --text "Sei sicuro di voler rimuovere le librerie orfane? (ATTENZIONE: COMANDO POTENZIALMENTE PERICOLOSO!!)"
if [ $? -eq 0 ]; then

sudo apt-get -y install deborphan
sudo apt-get -y --purge remove `deborphan`| zenity --progress --pulsate --text="Rimozione librerie orfane..."
else
zenity --info --text="Operazione non effettuata."

fi       

        fi
        if [ "$opt" = "librerie-orfane-sviluppo" ]; then

zenity --question --text "Sei sicuro di voler rimuovere le librerie orfane di sviluppo? (ATTENZIONE: COMANDO POTENZIALMENTE PERICOLOSO!!)"
if [ $? -eq 0 ]; then

sudo apt-get -y install deborphan
sudo apt-get -y --purge remove `deborphan --libdev`| zenity --progress --pulsate --text="Rimozione librerie orfane di sviluppo..."
else
zenity --info --text="Operazione non effettuata."

fi       
               
        fi
done

fi
mainmenu
}


mainmenu () {

CHOICE=$(zenity --width=550 --height=250 --title="Ubuntu Cleaner" --list --column=Opzione --column=Info --text="Seleziona una operazione da eseguire:" Pulizia "Pulisce il sistema da pacchetti obsoleti e dipendenze inutili" Aggiornamento "Aggiorna i pacchetti, le chiavi GPG e molto altro" Info "Informazioni su Ubuntu Cleaner")

if [ "$CHOICE" = "Pulizia" ]; then
Pulizia
elif [ "$CHOICE" = "Aggiornamento" ]; then
Aggiornamento
elif [ "$CHOICE" = "Info" ]; then
zenity --info --title="Ubuntu Cleaner" --text="Questo script effettua una manutenzione guidata del sistema. Ubuntu Cleaner è fornito dalla comunità italiana di Ubuntu. Per informazioni si veda http://forum.ubuntu-it.org/index.php/topic,201409.0.html"
mainmenu
else
exit 0
fi
}

mainmenu

else
zenity --info --title="Ubuntu Cleaner" --text="E' necessario avere i privilegi di root per eseguire Ubuntu Cleaner!"
fi

Comunque ringrazio tutti quelli che hanno contribuito allo script portando avanti questo progetto che trovo molto utile.  Wink
Nel caso voleste provare, nel comando del lanciatore dovete mettere qualcosa del genere:

gksudo /percorso/dello/script/nomescript.sh

senza i permessi di root lo script non si avvia.
Registrato

psqcld
Entusiasta Emergente
**
Non Connesso Non Connesso

Sesso: Maschio
Messaggi: 1.614

Media messaggi


Due Ruote ... Avanti !


Mostra profilo
« Risposta #481 inserita: 30 Maggio, 2009, 14:03:33 »

@ SAKO,  Beer to beer
                  ottimo lavoro,  Good lunedì studierò le tue modifiche sperimentandole su di un PC cavia   Cool.
Edit: non ho pazienza ... l'ho testato su Xubuntu 8.04 e va bene  Cheesy. Ora mi studio un po' Zenity e aggiungo al mio script qualche funzione che non hai inserito. (potevi risparmiarci la faticaccia) Grin
« Ultima modifica: 30 Maggio, 2009, 14:25:08 da psqcld » Registrato

Il mio primo PC  di fronte, di lato, nel sito
Attuale PC ... P-IV Prescott 2.8GHz - 1Gb RAM - ATI 1600 - Ubuntu 10.04 LTS
MultiMedia: - Dopo decenni di abbandono, ho ripreso lo studio della Fisarmonica
escaflone86
Coraggioso Chiacchierone
*
Non Connesso Non Connesso

Sesso: Maschio
Messaggi: 373

Media messaggi


好奇心の意味ですか?


Mostra profilo WWW
« Risposta #482 inserita: 30 Maggio, 2009, 15:46:20 »

Ho perso un po' di tempo a guardare il codice dello script e alla fine ho pensato di integrarlo con zenity in modo da fornire una gui minimale allo script. Non so se può essere utile a qualcuno, ma per adesso l'interfaccia fornita con buc non mi soddisfa e lo script lanciato dal teminale costringe a premere s e n più volte....non ho inserito tutti i comandi presenti nello script originale (perchè non tutti mi interessavano personalmente...) ma una volta creato un lanciatore questo è il risultato che si ottiene.




Se a qualcuno interessa possiamo anche aggiungere altri comandi e migliorarla, vi lascio il codice così come l'ho modificato. Zenity è già presente in ubuntu così non c'è bisogno di installare niente (anche se il codice effettua alcuni controlli).

Codice:
#!/bin/bash

testroot=$(whoami)

if [ "$testroot" = "root" ]; then

testzenity=`which zenity`

if [ "$testzenity" = "" ]; then
apt-get -y -q install zenity
fi

Aggiornamento () {

ans=$(zenity  --width=440 --height=250 --list  --separator=$'\n' --text "Selezionare gli elementi che si desidera aggiornare:" --checklist  --column "Pick" --column "options" FALSE "indici-pacchetti" FALSE "chiavi-GPG" FALSE "pacchetti" FALSE "pacchetti-difettosi");

for opt in ${ans}; do

        if [ "$opt" = "indici-pacchetti" ]; then
                  sudo apt-get update | zenity --progress --pulsate --text="Aggiorno gli indici dei pacchetti..."
        fi
        if [ "$opt" = "chiavi-GPG" ]; then
                  touch err
  sudo apt-get update 2>err | zenity --progress --pulsate --text="Aggiornamento chiavi GPG in corso..."
    num=$(grep 'NO_PUBKEY' err | wc -l)
  str=$(grep 'NO_PUBKEY'  err)
  tot=$num
  if [ $num != 0 ]
  then
  zenity --info --title="Ubuntu Cleaner" --text="---RISOLVO NO_PUBKEY---"
  for (( i=0 ; i<$num ; i++ ))   
  do
  tmp=${str#*NO_PUBKEY }
  key=${tmp:0:16}
  str=${str#*NO_PUBKEY}
          zenity --info --title="Ubuntu Cleaner" --text="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
  for (( i=0 ; i<$num ; i++ ))   
  do
  tmp=${str#*BADSIG }
  key=${tmp:0:16}
  str=${str#*BADSIG}
  zenity --info --title="Ubuntu Cleaner" --text="Aggiungo la chiave:$key"
  gpg --keyserver subkeys.pgp.net --recv $key
  gpg --export --armor $key | sudo apt-key add -
  done
  fi
  rm err
  zenity --info --title="Ubuntu Cleaner" --text="Chiavi GPG aggiornate"
          fi

if [ "$opt" = "pacchetti" ]; then
                sudo apt-get upgrade | zenity --progress --pulsate --text="Aggiorno i pacchetti..."
fi

        if [ "$opt" = "pacchetti-difettosi" ]; then
                sudo apt-get install -f | zenity --progress --pulsate --text="Correggo i pacchetti difettosi..."
        fi

done
mainmenu
}


Pulizia () {

zenity --question --text "Vuoi eseguire tutti i comandi per la pulizia del sistema?"
if [ $? -eq 0 ]; then
sudo apt-get -y install deborphan

(sudo apt-get --purge autoremove && sudo apt-get autoclean && sudo apt-get clean && sudo apt-get -y --purge remove `deborphan` && sudo apt-get -y --purge remove `deborphan --libdev` && sudo dpkg --purge `COLUMNS=300 dpkg -l "*" | egrep "^rc" | cut -d\  -f3`) | zenity --progress --pulsate --text="Pulizia del sistema in corso..."
mainmenu
exit 0

else
ans=$(zenity  --width=440 --height=300  --list  --separator=$'\n' --text "Selezionare gli elementi del sistema su cui si desidera effettuare una pulizia:" --checklist  --column "Pick" --column "options" FALSE "dipendenze-inutili" FALSE "cache-pacchetti-obsoleti" FALSE "cache-pacchetti-repository" FALSE "pacchetti-obsoleti" FALSE "librerie-orfane" FALSE "librerie-orfane-sviluppo");

for opt in $ans; do

if [ "$opt" = "dipendenze-inutili" ]; then
                sudo apt-get --purge autoremove | zenity --progress --pulsate --text="Rimuovo dipendenze inutili..."

fi
if [ "$opt" = "cache-pacchetti-obsoleti" ]; then
sudo apt-get autoclean | zenity --progress --pulsate --text="Rimozione cache pacchetti obsoleti..."

        fi
        if [ "$opt" = "cache-pacchetti-repository" ]; then
                sudo apt-get clean | zenity --progress --pulsate --text="Rimozione cache pacchetti scaricati..."

        fi
if [ "$opt" = "pacchetti-obsoleti" ]; then
                sudo dpkg --purge `COLUMNS=300 dpkg -l "*" | egrep "^rc" | cut -d\  -f3`
zenity --info --title="Ubuntu Cleaner" --text="Pacchetti obsoleti rimossi"
        fi
       
if [ "$opt" = "librerie-orfane" ]; then

zenity --question --text "Sei sicuro di voler rimuovere le librerie orfane? (ATTENZIONE: COMANDO POTENZIALMENTE PERICOLOSO!!)"
if [ $? -eq 0 ]; then

sudo apt-get -y install deborphan
sudo apt-get -y --purge remove `deborphan`| zenity --progress --pulsate --text="Rimozione librerie orfane..."
else
zenity --info --text="Operazione non effettuata."

fi       

        fi
        if [ "$opt" = "librerie-orfane-sviluppo" ]; then

zenity --question --text "Sei sicuro di voler rimuovere le librerie orfane di sviluppo? (ATTENZIONE: COMANDO POTENZIALMENTE PERICOLOSO!!)"
if [ $? -eq 0 ]; then

sudo apt-get -y install deborphan
sudo apt-get -y --purge remove `deborphan --libdev`| zenity --progress --pulsate --text="Rimozione librerie orfane di sviluppo..."
else
zenity --info --text="Operazione non effettuata."

fi       
               
        fi
done

fi
mainmenu
}


mainmenu () {

CHOICE=$(zenity --width=550 --height=250 --title="Ubuntu Cleaner" --list --column=Opzione --column=Info --text="Seleziona una operazione da eseguire:" Pulizia "Pulisce il sistema da pacchetti obsoleti e dipendenze inutili" Aggiornamento "Aggiorna i pacchetti, le chiavi GPG e molto altro" Info "Informazioni su Ubuntu Cleaner")

if [ "$CHOICE" = "Pulizia" ]; then
Pulizia
elif [ "$CHOICE" = "Aggiornamento" ]; then
Aggiornamento
elif [ "$CHOICE" = "Info" ]; then
zenity --info --title="Ubuntu Cleaner" --text="Questo script effettua una manutenzione guidata del sistema. Ubuntu Cleaner è fornito dalla comunità italiana di Ubuntu. Per informazioni si veda http://forum.ubuntu-it.org/index.php/topic,201409.0.html"
mainmenu
else
exit 0
fi
}

mainmenu

else
zenity --info --title="Ubuntu Cleaner" --text="E' necessario avere i privilegi di root per eseguire Ubuntu Cleaner!"
fi

Comunque ringrazio tutti quelli che hanno contribuito allo script portando avanti questo progetto che trovo molto utile.  Wink
Nel caso voleste provare, nel comando del lanciatore dovete mettere qualcosa del genere:

gksudo /percorso/dello/script/nomescript.sh

senza i permessi di root lo script non si avvia.

Un ottima idea per rinnovare quella che sarebbe stata l'interfaccia con buc, visto che anche che buc non si è più fatto sentire...ok benissimo andiamo avanti allora e cerchiamo di integrarli tutti...ora mi studio zenity anche io e proviamo...
Registrato

Luke Skywalker:" Bene, ci proverò". Yoda: « Provare no! Fare! O non fare. Non c'è provare! » Dateci un'cchiata.....http://forum.ubuntu-it.org/index.php/topic,201409.0.html

DeviantArt: http://alespana.deviantart.com/
SAKO
Coraggioso Chiacchierone
*
Non Connesso Non Connesso

Messaggi: 528

Media messaggi



Mostra profilo WWW
« Risposta #483 inserita: 30 Maggio, 2009, 17:35:12 »

Visto che la cosa interessa  Grin posso aggiungere gli altri comandi che per il mio uso personale avevo tolto. Per me non sarà una faticaccia, so già come ho modificato il codice e dove inserire quello che serve. Magari in serata o domani lo posto.  Beer to beer
Registrato

Six110
Coraggioso Chiacchierone
*
Non Connesso Non Connesso

Sesso: Maschio
Messaggi: 524

Media messaggi


sudo ma godo


Mostra profilo WWW
« Risposta #484 inserita: 30 Maggio, 2009, 17:58:44 »

Visto che la cosa interessa  Grin posso aggiungere gli altri comandi che per il mio uso personale avevo tolto. Per me non sarà una faticaccia, so già come ho modificato il codice e dove inserire quello che serve. Magari in serata o domani lo posto.  Beer to beer

E chiamarlo UCleaner? Facciamo concorrenza al CCleaner di win!!!
Registrato

~The quieter you become, the more you are able to hear~
SAKO
Coraggioso Chiacchierone
*
Non Connesso Non Connesso

Messaggi: 528

Media messaggi



Mostra profilo WWW
« Risposta #485 inserita: 30 Maggio, 2009, 18:16:22 »

Visto che la cosa interessa  Grin posso aggiungere gli altri comandi che per il mio uso personale avevo tolto. Per me non sarà una faticaccia, so già come ho modificato il codice e dove inserire quello che serve. Magari in serata o domani lo posto.  Beer to beer

E chiamarlo UCleaner? Facciamo concorrenza al CCleaner di win!!!

Per me va bene! Mi piace UCleaner!
Registrato

escaflone86
Coraggioso Chiacchierone
*
Non Connesso Non Connesso

Sesso: Maschio
Messaggi: 373

Media messaggi


好奇心の意味ですか?


Mostra profilo WWW
« Risposta #486 inserita: 30 Maggio, 2009, 18:29:14 »

Visto che la cosa interessa  Grin posso aggiungere gli altri comandi che per il mio uso personale avevo tolto. Per me non sarà una faticaccia, so già come ho modificato il codice e dove inserire quello che serve. Magari in serata o domani lo posto.  Beer to beer

E chiamarlo UCleaner? Facciamo concorrenza al CCleaner di win!!!

Per me va bene! Mi piace UCleaner!

Ok, naturalmente appena lo posti se riesci fai anche il favore di scrivere qualche dritta su Zenity ed il suo funzionamento che poi metterò in prima pagina. Beer to beer Beer to beer  Bello Ucleaner
Registrato

Luke Skywalker:" Bene, ci proverò". Yoda: « Provare no! Fare! O non fare. Non c'è provare! » Dateci un'cchiata.....http://forum.ubuntu-it.org/index.php/topic,201409.0.html

DeviantArt: http://alespana.deviantart.com/
SAKO
Coraggioso Chiacchierone
*
Non Connesso Non Connesso

Messaggi: 528

Media messaggi



Mostra profilo WWW
« Risposta #487 inserita: 30 Maggio, 2009, 20:05:34 »

ok, ecco qui il codice con tutti i comandi:

Codice:
#!/bin/bash

testroot=$(whoami)

if [ "$testroot" = "root" ]; then

testzenity=`which zenity`

if [ "$testzenity" = "" ]; then
apt-get -y -q install zenity
fi

Aggiornamento () {

ans=$(zenity  --width=440 --height=250 --list  --separator=$'\n' --text "Selezionare gli elementi che si desidera aggiornare:" --checklist  --column "Pick" --column "options" FALSE "indici-pacchetti" FALSE "chiavi-GPG" FALSE "pacchetti" FALSE "data-e-ora" FALSE "kernel" FALSE "initramfs" FALSE "pacchetti-difettosi" FALSE "configurazioni-GRUB");

for opt in ${ans}; do

        if [ "$opt" = "indici-pacchetti" ]; then
                  sudo apt-get update | zenity --progress --pulsate --text="Aggiorno gli indici dei pacchetti..."
        fi
        if [ "$opt" = "chiavi-GPG" ]; then
                  touch err
  sudo apt-get update 2>err | zenity --progress --pulsate --text="Aggiornamento chiavi GPG in corso..."
    num=$(grep 'NO_PUBKEY' err | wc -l)
  str=$(grep 'NO_PUBKEY'  err)
  tot=$num
  if [ $num != 0 ]
  then
  zenity --info --title="Ubuntu Cleaner" --text="---RISOLVO NO_PUBKEY---"
  for (( i=0 ; i<$num ; i++ ))   
  do
  tmp=${str#*NO_PUBKEY }
  key=${tmp:0:16}
  str=${str#*NO_PUBKEY}
          zenity --info --title="Ubuntu Cleaner" --text="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
  for (( i=0 ; i<$num ; i++ ))   
  do
  tmp=${str#*BADSIG }
  key=${tmp:0:16}
  str=${str#*BADSIG}
  zenity --info --title="Ubuntu Cleaner" --text="Aggiungo la chiave:$key"
  gpg --keyserver subkeys.pgp.net --recv $key
  gpg --export --armor $key | sudo apt-key add -
  done
  fi
  rm err
  zenity --info --title="Ubuntu Cleaner" --text="Chiavi GPG aggiornate"
          fi

if [ "$opt" = "pacchetti" ]; then
                sudo apt-get upgrade | zenity --progress --pulsate --text="Aggiorno i pacchetti..."
fi
if [ "$opt" = "data-e-ora" ]; then
                sudo ntpdate it.pool.ntp.org
zenity --info --title="Ubuntu Cleaner" --text="Aggiornati la data e l'ora del sistema"
        fi
        if [ "$opt" = "kernel" ]; then
                sudo apt-get dist-upgrade -f | zenity --progress --pulsate --text="Aggiorno il kernel..."
        fi
if [ "$opt" = "initramfs" ]; then
                sudo update-initramfs -u
zenity --info --title="Ubuntu Cleaner" --text="initramfs aggiornato"
        fi
        if [ "$opt" = "pacchetti-difettosi" ]; then
                sudo apt-get install -f | zenity --progress --pulsate --text="Correggo i pacchetti difettosi..."
zenity --info --title="Ubuntu Cleaner" --text="Pacchetti difettosi corretti"
        fi
if [ "$opt" = "configurazioni-GRUB" ]; then
                sudo cp /boot/grub/menu.lst /boot/grub/menu.bak
sudo update-grub
zenity --info --title="Ubuntu Cleaner" --text="Configurazioni di Grub aggiornate (creato un Backup)"
fi

done
mainmenu
}


Pulizia () {

zenity --question --text "Vuoi eseguire tutti i comandi per la pulizia del sistema?"
if [ $? -eq 0 ]; then
sudo apt-get -y install deborphan

(
echo "# Rimuovo dipendenze inutili..." ;
sudo apt-get --purge autoremove
echo "10" ;

echo "# Rimozione cache pacchetti obsoleti..." ;
sudo apt-get autoclean
echo "20" ;

      echo "# Rimozione cache pacchetti scaricati..." ;
sudo apt-get clean
echo "40" ;

echo "# Svotamento cestino..." ;
sudo rm -rf ~/.local/share/Trash/*
echo "50" ;

echo "# Pulizia cartella /temp"
sudo rm -rf /tmp/*
echo "60" ;

echo "# Pulizia cartella /thumbnails"
sudo rm -rf ~/.thumbnails/*
echo "70" ;

echo "# Rimozione librerie orfane..." ;
sudo apt-get -y --purge remove `deborphan`
echo "80" ;

echo "# Rimozione librerie orfane di sviluppo..." ;
sudo apt-get -y --purge remove `deborphan --libdev`
echo "90" ;

echo "# Rimozione pacchetti obsoleti..." ;
sudo dpkg --purge `COLUMNS=300 dpkg -l "*" | egrep "^rc" | cut -d\  -f3`
echo "100" ;

echo "# Pulizia del sistema effettuata" ;
) | zenity --progress --percentage=0 --text="Pulizia del sistema in corso..."

mainmenu
exit 0

else
ans=$(zenity  --width=440 --height=250  --list  --separator=$'\n' --text "Selezionare gli elementi del sistema su cui si desidera effettuare una pulizia:" --checklist  --column "Pick" --column "options" FALSE "dipendenze-inutili" FALSE "cache-pacchetti-obsoleti" FALSE "cache-pacchetti-repository" FALSE "pacchetti-obsoleti" FALSE "cartella-/temp" FALSE "cartella-/.thumbnails" FALSE "residui-files" FALSE "cestino" FALSE "documenti-recenti" FALSE "librerie-orfane" FALSE "librerie-orfane-sviluppo");

for opt in $ans; do

if [ "$opt" = "dipendenze-inutili" ]; then
                sudo apt-get --purge autoremove | zenity --progress --pulsate --text="Rimuovo dipendenze inutili..."

fi
if [ "$opt" = "cache-pacchetti-obsoleti" ]; then
sudo apt-get autoclean | zenity --progress --pulsate --text="Rimozione cache pacchetti obsoleti..."

        fi
        if [ "$opt" = "cache-pacchetti-repository" ]; then
                sudo apt-get clean | zenity --progress --pulsate --text="Rimozione cache pacchetti scaricati..."

        fi
if [ "$opt" = "pacchetti-obsoleti" ]; then
                sudo dpkg --purge `COLUMNS=300 dpkg -l "*" | egrep "^rc" | cut -d\  -f3`
zenity --info --title="Ubuntu Cleaner" --text="Pacchetti obsoleti rimossi"
        fi
        if [ "$opt" = "cartella-/temp" ]; then
                sudo rm -rf /tmp/*
zenity --info --title="Ubuntu Cleaner" --text="Cartella /temp pulita"
        fi
if [ "$opt" = "cartella-/.thumbnails" ]; then
                sudo rm -rfv ~/.thumbnails/*
zenity --info --title="Ubuntu Cleaner" --text="Cartella /.thumbnails pulita"
fi
if [ "$opt" = "residui-files" ]; 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
zenity --info --title="Ubuntu Cleaner" --text="Residui di file rimossi"
fi
if [ "$opt" = "cestino" ]; then
                sudo rm -rf ~/.local/share/Trash/* | zenity --progress --pulsate --text="Svotamento cestino..."
        fi
        if [ "$opt" = "documenti-recenti" ]; then
                sudo mv ~/.recently-used.xbel .recently-used.xbel.bak
sudo mv ~/.recently-used .recently-used.bak
touch ~/.recently-used.xbel
echo "<?xml version="1.0" encoding="UTF-8"?>\n<xbel version="1.0"\nxmlns:bookmark="http://www.freedesktop.org/standards/desktop-bookmarks"\nxmlns:mime="http://www.freedesktop.org/standards/shared-mime-info"\n></xbel>\n
 " > ~/.recently-used.xbel
zenity --info --title="Ubuntu Cleaner" --text="Documenti recenti rimossi"
        fi
if [ "$opt" = "librerie-orfane" ]; then

zenity --question --text "Sei sicuro di voler rimuovere le librerie orfane? (ATTENZIONE: COMANDO POTENZIALMENTE PERICOLOSO!!)"
if [ $? -eq 0 ]; then

sudo apt-get -y install deborphan
sudo apt-get -y --purge remove `deborphan`| zenity --progress --pulsate --text="Rimozione librerie orfane..."
else
zenity --info --text="Operazione non effettuata."

fi       

        fi
        if [ "$opt" = "librerie-orfane-sviluppo" ]; then

zenity --question --text "Sei sicuro di voler rimuovere le librerie orfane di sviluppo? (ATTENZIONE: COMANDO POTENZIALMENTE PERICOLOSO!!)"
if [ $? -eq 0 ]; then

sudo apt-get -y install deborphan
sudo apt-get -y --purge remove `deborphan --libdev`| zenity --progress --pulsate --text="Rimozione librerie orfane di sviluppo..."
else
zenity --info --text="Operazione non effettuata."

fi       
               
        fi
done

fi
mainmenu
}


mainmenu () {

CHOICE=$(zenity --width=550 --height=250 --title="Ubuntu Cleaner" --list --column=Opzione --column=Info --text="Seleziona una operazione da eseguire:" Pulizia "Pulisce il sistema da pacchetti obsoleti e dipendenze inutili" Aggiornamento "Aggiorna i pacchetti, le chiavi GPG, il kernel e molto altro" Info "Informazioni su Ubuntu Cleaner")

if [ "$CHOICE" = "Pulizia" ]; then
Pulizia
elif [ "$CHOICE" = "Aggiornamento" ]; then
Aggiornamento
elif [ "$CHOICE" = "Info" ]; then
zenity --info --title="Ubuntu Cleaner" --text="Questo script effettua una manutenzione guidata del sistema. Ubuntu Cleaner è fornito dalla comunità italiana di Ubuntu. Per informazioni si veda http://forum.ubuntu-it.org/index.php/topic,201409.0.html"
mainmenu
else
exit 0
fi
}

mainmenu

else
zenity --info --title="Ubuntu Cleaner" --text="E' necessario avere i privilegi di root per eseguire Ubuntu Cleaner!"
fi

Non ho cambiato il nome ancora (ci voleva troppo, magari lo faccio domani...) e manca di alcuni controlli tipo il riavvio del sistema, il controllo della connessione internet etc....ma per ora può andare. Va un po' testato, non sono sicuro di aver scritto tutto bene!

Info su zenity:

http://library.gnome.org/users/zenity/stable/index.html.en

http://linuxpedia.netsons.org/index.php?title=Zenity

se c'è qualche problema domani scrivo dei commenti sul codice prima dei comandi.
Registrato

psqcld
Entusiasta Emergente
**
Non Connesso Non Connesso

Sesso: Maschio
Messaggi: 1614

Media messaggi


Due Ruote ... Avanti !


Mostra profilo
« Risposta #488 inserita: 30 Maggio, 2009, 23:03:49 »

Ho testato gksu ./UCleaner.sh con ubuntu 9.04 e va bene  Good
Quando si simuove il contenuto di /tmp/* però si creano dei casini.
    se attivata come opzione, aggiungerei alla fine dello script a scelta i comandi:
Codice:
sudo reboot
sudo poweroff
Registrato

Il mio primo PC  di fronte, di lato, nel sito
Attuale PC ... P-IV Prescott 2.8GHz - 1Gb RAM - ATI 1600 - Ubuntu 10.04 LTS
MultiMedia: - Dopo decenni di abbandono, ho ripreso lo studio della Fisarmonica
tonywhite
Entusiasta Emergente
**
Non Connesso Non Connesso

Sesso: Maschio
Messaggi: 1.294

Media messaggi


Ubuntu user #23345


Mostra profilo
« Risposta #489 inserita: 30 Maggio, 2009, 23:10:42 »

Ho testato gksu ./UCleaner.sh con ubuntu 9.04 e va bene  Good
Quando si simuove il contenuto di /tmp/* però si creano dei casini.
    se attivata come opzione, aggiungerei alla fine dello script a scelta i comandi:
Codice:
sudo reboot
sudo poweroff

Quoto  Smiley
Registrato

SAKO
Coraggioso Chiacchierone
*
Non Connesso Non Connesso

Messaggi: 528

Media messaggi



Mostra profilo WWW
« Risposta #490 inserita: 31 Maggio, 2009, 09:33:29 »

Ho testato gksu ./UCleaner.sh con ubuntu 9.04 e va bene  Good
Quando si simuove il contenuto di /tmp/* però si creano dei casini.
    se attivata come opzione, aggiungerei alla fine dello script a scelta i comandi:
Codice:
sudo reboot
sudo poweroff

Quoto  Smiley

Infatti, nel codice che usavo per me avevo tolto la pulizia di /tmp perchè mi costringeva a riavviare...
Comunque sto inserendo i controlli anche per la richiesta di riavvio nel caso venga eseguito quel comando e un controllo della connessione internet in caso venga scelta l'opzione di aggiornamento.
Quando ho fatto posto il codice aggiornato!
Registrato

SAKO
Coraggioso Chiacchierone
*
Non Connesso Non Connesso

Messaggi: 528

Media messaggi



Mostra profilo WWW
« Risposta #491 inserita: 01 Giugno, 2009, 10:48:43 »

Posto il codice aggiornato. Ho aggiunto un po' di controlli e alcune novità grafiche!

Adesso quando viene eseguita la pulizia completa c'è una barra di progresso che avanza gradualmente e viene indicato il comando che si sta eseguendo. Poichè viene pulita la cartella /tmp viene consigliato il riavvio.

Nelle finestre dove si scelgono i comandi da eseguire invece, ho aggiunto una colonna con le descrizioni dei singoli comandi:




Per quanto riguarda i controlli, se non si effettua la pulizia completa ma si sceglie di eseguire la pulizia della cartella /tmp viene comunque consigliato il riavvio al termine delle operazioni (qui ho usato la variabile restart).
Se si seleziona l'opzione aggiornamento viene effettuato un controllo della connessione internet, questo per evitare che appaia il messaggio di avvenuto aggiornamento quando invece non si è nemmeno connessi ad internet.

ho fatto così. Se avete idee migliori ditemelo!
Codice:
elif [ "$CHOICE" = "Aggiornamento" ]; then
testnetwork=$(ping -c 1 www.google.it)
if [ "$testnetwork" != "" ]; then
Aggiornamento
else
zenity --info --title="UCleaner" --text="Non è stata rilevata una connessione internet attiva!"
mainmenu
fi

Lanciandolo dal terminale non ho notato nessun problema. Però se lancio lo script creando un lanciatore sul pannello di gnome
con comando gksudo ./UCleaner il cestino non si svuota! Mi sfugge il perchè, qualcuno sa come risolvere??

Ecco il codice:

Codice:
#!/bin/bash

testroot=$(whoami)

if [ "$testroot" = "root" ]; then

testzenity=`which zenity`

if [ "$testzenity" = "" ]; then
apt-get -y -q install zenity
fi

Aggiornamento () {

ans=$(zenity --width=600 --height=320 --title="UCleaner" --list  --separator=$'\n' --text "Selezionare gli elementi che si desidera aggiornare:" --checklist  --column "Check" --column "Opzione" --column "Descrizione" FALSE "indici-pacchetti" "aggiorna gli indici dei pacchetti" FALSE "chiavi-GPG" "aggiorna ed aggiunge le chiavi mancanti" FALSE "pacchetti" "aggiorna i pacchetti" FALSE "time" "aggiorna la data e l'ora del sistema" FALSE "kernel" "aggiorna il kernel del sistema" FALSE "initramfs" "aggiorna l'immagine initramfs del kernel" FALSE "pacchetti-difettosi" "verifica che non ci siano pacchetti difettosi" FALSE "GRUB" "aggiorna le configurazioni di GRUB");

for opt in ${ans}; do

        if [ "$opt" = "indici-pacchetti" ]; then
                  sudo apt-get update | zenity --progress --pulsate --text="Aggiorno gli indici dei pacchetti..."
        fi
        if [ "$opt" = "chiavi-GPG" ]; then
                  touch err
  sudo apt-get update 2>err | zenity --progress --pulsate --text="Aggiornamento chiavi GPG in corso..."
    num=$(grep 'NO_PUBKEY' err | wc -l)
  str=$(grep 'NO_PUBKEY'  err)
  tot=$num
  if [ $num != 0 ]
  then
  for (( i=0 ; i<$num ; i++ ))   
  do
  tmp=${str#*NO_PUBKEY }
  key=${tmp:0:16}
  str=${str#*NO_PUBKEY}
          zenity --info --title="UCleaner" --text="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
  for (( i=0 ; i<$num ; i++ ))   
  do
  tmp=${str#*BADSIG }
  key=${tmp:0:16}
  str=${str#*BADSIG}
  zenity --info --title="UCleaner" --text="Aggiungo la chiave:$key"
  gpg --keyserver subkeys.pgp.net --recv $key
  gpg --export --armor $key | sudo apt-key add -
  done
  fi
  rm err
  zenity --info --title="UCleaner" --text="Chiavi GPG aggiornate"
          fi

if [ "$opt" = "pacchetti" ]; then
                sudo apt-get upgrade | zenity --progress --pulsate --text="Aggiorno i pacchetti..."
fi
if [ "$opt" = "time" ]; then
                sudo ntpdate it.pool.ntp.org
zenity --info --title="UCleaner" --text="Aggiornati la data e l'ora del sistema"
        fi
        if [ "$opt" = "kernel" ]; then
                sudo apt-get dist-upgrade -f | zenity --progress --pulsate --text="Aggiorno il kernel..."
        fi
if [ "$opt" = "initramfs" ]; then
                sudo update-initramfs -u
zenity --info --title="UCleaner" --text="initramfs aggiornato"
        fi
        if [ "$opt" = "pacchetti-difettosi" ]; then
                sudo apt-get install -f | zenity --progress --pulsate --text="Correggo i pacchetti difettosi..."
zenity --info --title="UCleaner" --text="Pacchetti difettosi corretti"
        fi
if [ "$opt" = "GRUB" ]; then
                sudo cp /boot/grub/menu.lst /boot/grub/menu.bak
sudo update-grub
zenity --info --title="UCleaner" --text="Configurazioni di Grub aggiornate (creato un Backup)"
fi

done
mainmenu
}

Pulizia () {

zenity --question --text "Vuoi eseguire tutti i comandi per la pulizia del sistema?"

if [ $? -eq 0 ]; then
sudo apt-get -y install deborphan
(
echo "# Rimuovo dipendenze inutili..." ;
sudo apt-get --purge autoremove
echo "10" ;

echo "# Rimozione cache pacchetti obsoleti..." ;
sudo apt-get autoclean
echo "20" ;

      echo "# Rimozione cache pacchetti scaricati..." ;
sudo apt-get clean
echo "35" ;

echo "# Svotamento cestino..." ;
sudo rm -rf ~/.local/share/Trash/*
echo "45" ;

echo "# Pulizia cartella /tmp"
sudo rm -rf /tmp/*
echo "55" ;

echo "# Pulizia cartella /thumbnails"
sudo rm -rf ~/.thumbnails/*
echo "65" ;

echo "# Rimozione librerie orfane..." ;
sudo apt-get -y --purge remove `deborphan`
echo "75" ;

echo "# Rimozione librerie orfane di sviluppo..." ;
sudo apt-get -y --purge remove `deborphan --libdev`
echo "85" ;

echo "# Rimozione residui di files..." ;
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 "90" ;

echo "# Pulizia documenti recenti..." ;
sudo mv ~/.recently-used.xbel .recently-used.xbel.bak
sudo mv ~/.recently-used .recently-used.bak
touch ~/.recently-used.xbel
echo "<?xml version="1.0" encoding="UTF-8"?>\n<xbel version="1.0"\nxmlns:bookmark="http://www.freedesktop.org/standards/desktop-bookmarks"\nxmlns:mime="http://www.freedesktop.org/standards/shared-mime-info"\n></xbel>\n
 " > ~/.recently-used.xbel
echo "97" ;

echo "# Rimozione pacchetti obsoleti..." ;
sudo dpkg --purge `COLUMNS=300 dpkg -l "*" | egrep "^rc" | cut -d\  -f3`
echo "100" ;

echo "# Pulizia del sistema effettuata" ;
) | zenity --progress --percentage=0 --text="Pulizia del sistema in corso..."

zenity --question --text "E' consigliato riavviare il sistema. Riavviare il pc adesso?"
if [ $? -eq 0 ]; then
sudo reboot
fi
     
mainmenu
exit 0

else
ans=$(zenity --height 400 --width 750 --title="UCleaner" --list --separator=$'\n' --text "Selezionare gli elementi del sistema su cui si desidera effettuare una pulizia:" --checklist --column "Check" --column "Opzione" --column "Descrizione" FALSE "dipendenze-inutili" "rimuove le dipendenze inutili" FALSE "cache-pacchetti-obsoleti" "rimuove la cache dei pacchetti scaricati dai repository obsoleti" FALSE "cache-pacchetti-repository" "rimuove la cache dei pacchetti scaricati dai repository" FALSE "pacchetti-obsoleti" "rimuove tutti i pacchetti di sistema oramai diventati obsoleti" FALSE "cartella-/tmp" "rimuove files dalla cartella /tmp" FALSE "cartella-/.thumbnails" "rimuove files dalla cartella /.thumbnails" FALSE "residui-files" "rimuove i residui dei files" FALSE "cestino" "svuota il cestino" FALSE "documenti-recenti" "pulisce la lista dei file aperti recentemente" FALSE "librerie-orfane" "rimuove le librerie orfane" FALSE "librerie-orfane-sviluppo" "rimuove le librerie orfane di sviluppo");

for opt in $ans; do

if [ "$opt" = "dipendenze-inutili" ]; then
                sudo apt-get --purge autoremove | zenity --progress --pulsate --text="Rimuovo dipendenze inutili..."

fi
if [ "$opt" = "cache-pacchetti-obsoleti" ]; then
sudo apt-get autoclean | zenity --progress --pulsate --text="Rimozione cache pacchetti obsoleti..."

        fi
        if [ "$opt" = "cache-pacchetti-repository" ]; then
                sudo apt-get clean | zenity --progress --pulsate --text="Rimozione cache pacchetti scaricati..."

        fi
if [ "$opt" = "pacchetti-obsoleti" ]; then
                sudo dpkg --purge `COLUMNS=300 dpkg -l "*" | egrep "^rc" | cut -d\  -f3`
zenity --info --title="UCleaner" --text="Pacchetti obsoleti rimossi"
        fi
        if [ "$opt" = "cartella-/tmp" ]; then
restart=1;
                sudo rm -rf /tmp/*
zenity --info --title="UCleaner" --text="Cartella /tmp pulita"
        fi
if [ "$opt" = "cartella-/.thumbnails" ]; then
                sudo rm -rf ~/.thumbnails/*
zenity --info --title="UCleaner" --text="Cartella /.thumbnails pulita"
fi
if [ "$opt" = "residui-files" ]; 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
zenity --info --title="UCleaner" --text="Residui di file rimossi"
fi
if [ "$opt" = "cestino" ]; then
                sudo rm -rf ~/.local/share/Trash/* | zenity --progress --pulsate --text="Svotamento cestino..."
        fi
        if [ "$opt" = "documenti-recenti" ]; then
                sudo mv ~/.recently-used.xbel .recently-used.xbel.bak
sudo mv ~/.recently-used .recently-used.bak
touch ~/.recently-used.xbel
echo "<?xml version="1.0" encoding="UTF-8"?>\n<xbel version="1.0"\nxmlns:bookmark="http://www.freedesktop.org/standards/desktop-bookmarks"\nxmlns:mime="http://www.freedesktop.org/standards/shared-mime-info"\n></xbel>\n
 " > ~/.recently-used.xbel
zenity --info --title="UCleaner" --text="Documenti recenti rimossi"
        fi
if [ "$opt" = "librerie-orfane" ]; then
zenity --question --text "Sei sicuro di voler rimuovere le librerie orfane? (ATTENZIONE: COMANDO POTENZIALMENTE PERICOLOSO!!)"
if [ $? -eq 0 ]; then
sudo apt-get -y install deborphan
sudo apt-get -y --purge remove `deborphan`| zenity --progress --pulsate --text="Rimozione librerie orfane..."
else
zenity --info --text="Operazione non effettuata."

fi       

        fi
        if [ "$opt" = "librerie-orfane-sviluppo" ]; then
zenity --question --text "Sei sicuro di voler rimuovere le librerie orfane di sviluppo? (ATTENZIONE: COMANDO POTENZIALMENTE PERICOLOSO!!)"
if [ $? -eq 0 ]; then
sudo apt-get -y install deborphan
sudo apt-get -y --purge remove `deborphan --libdev`| zenity --progress --pulsate --text="Rimozione librerie orfane di sviluppo..."
else
zenity --info --text="Operazione non effettuata."

fi       
               
        fi
done

if [ $restart -eq 1 ]; then
zenity --question --text "E' consigliato riavviare il sistema. Riavviare il pc adesso?"
if [ $? -eq 0 ]; then
sudo reboot
fi
fi

fi
mainmenu
}

mainmenu () {


restart=0;  ## Variabile per controllo riavvio in caso di pulizia di /tmp

CHOICE=$(zenity --width=550 --height=250 --title="UCleaner" --list --column=Opzione --column=Info --text="Seleziona una operazione da eseguire:" Pulizia "Effettua una pulizia completa del sistema" Aggiornamento "Effettua un aggiornamento completo del sistema" Info "Informazioni su UCleaner")

if [ "$CHOICE" = "Pulizia" ]; then
Pulizia
elif [ "$CHOICE" = "Aggiornamento" ]; then
testnetwork=$(ping -c 1 www.google.it)
if [ "$testnetwork" != "" ]; then
Aggiornamento
else
zenity --info --title="UCleaner" --text="Non è stata rilevata una connessione internet attiva!"
mainmenu
fi

elif [ "$CHOICE" = "Info" ]; then
zenity --info --title="UCleaner" --text="Questo script effettua una manutenzione guidata del sistema. UCleaner è fornito dalla comunità italiana di Ubuntu. Per informazioni si veda http://forum.ubuntu-it.org/index.php/topic,201409.0.html"

mainmenu
else
exit 0
fi
}

mainmenu

else
zenity --info --title="UCleaner" --text="E' necessario avere i privilegi di root per eseguire UCleaner!"
fi
Registrato

lucapas
Entusiasta Emergente
**
Non Connesso Non Connesso

Messaggi: 1.260

Media messaggi



Mostra profilo
« Risposta #492 inserita: 01 Giugno, 2009, 17:20:15 »

Wow! Grande Sako, davvero un ottimo lavoro! Io purtroppo non capisco niente di codice ma spero che si unisca qualcun altro per perfezionare questa già fantastica gui! Beer to beer
Registrato
SAKO
Coraggioso Chiacchierone
*
Non Connesso Non Connesso

Messaggi: 528

Media messaggi



Mostra profilo WWW
« Risposta #493 inserita: 01 Giugno, 2009, 19:14:15 »

Grazie lucapas! Beer to beer spero anch'io che qualcuno riesca a migliorarlo ancora!
Registrato

tonywhite
Entusiasta Emergente
**
Non Connesso Non Connesso

Sesso: Maschio
Messaggi: 1294

Media messaggi


Ubuntu user #23345


Mostra profilo
« Risposta #494 inserita: 01 Giugno, 2009, 22:53:28 »

[...]
Lanciandolo dal terminale non ho notato nessun problema. Però se lancio lo script creando un lanciatore sul pannello di gnome
con comando gksudo ./UCleaner il cestino non si svuota! Mi sfugge il perchè, qualcuno sa come risolvere??
[...]

Ho notato la stessa cosa con Java.

Ho capito questo:
Avviando il programma da terminale, ti trovi nella tua home, quindi se esegui il comando con un percorso relativo, ti legge il percorso attuale, cioè, la tua home.
Siccome lo avvii con un lanciatore (che sia sul pannello, menu o scrivania non importa) lo avvii come root, quindi dandogli il percorso relativo di ~/ non prenderà la tua home, ma la quella di root, di conseguenza svuoterà il cestino di root

Per risolvere il problema si può fare così:
L'utente che vorrà utilizzare UCleaner con un lanciatore, dovrà avere un lanciatore che si posizionerà nella propria home ed avvierà il programma.

Il lanciatore farà quindi questi passaggi (scusa se ti faccio una pseudocodifica, vedi l'orario del post  Grin )
1) Non si avvierà come root
2) il primo comando sarà un `whoami` per vedere chi è l'utente che ha avviato il programma
3) Si posizionerà nella tua home cd /home/`whoami` (così se snobbi le variabili temporanee)
4) avvierà UCleaner con gksu: gksu ./UCleaner (quindi l'utente può scegliere di mettere la password)
« Ultima modifica: 01 Giugno, 2009, 23:03:25 da tonywhite » Registrato

SAKO
Coraggioso Chiacchierone
*
Non Connesso Non Connesso

Messaggi: 528

Media messaggi



Mostra profilo WWW
« Risposta #495 inserita: 02 Giugno, 2009, 15:03:36 »

ok, grazie tonywhite! Ora ho capito il problema!
Ho creato una lanciatore che avvia UCleaner come da te consigliato poi però ho proceduto in modo un po' diverso.
Ho creato un .tar del programmino, e aggiunto un po' di news! Adesso basta scaricare il file che allego, scompattarlo e lanciare "sudo ./install.sh". Troverete UCleaner in Applicazioni accessori. Il programma si avvia, chiede la password e controlla la connessione ad internet solo se viene selezionata l'opzione di aggiornamento del sistema.

Spero non ci siano problemi!



P.S.

C'è anche lo script per disinstallare (sudo ./uninstall.sh)
Registrato

tonywhite
Entusiasta Emergente
**
Non Connesso Non Connesso

Sesso: Maschio
Messaggi: 1294

Media messaggi


Ubuntu user #23345


Mostra profilo
« Risposta #496 inserita: 02 Giugno, 2009, 15:27:24 »

Bene.

Un'altra cosa che mi viene in mente è come avviare UCleaner senza l'ausilio del secondo script.

1) Si avvia come utente normale e si posiziona nella propria home (cd /home/`whoami`), salvando la posizione in una variabile
2) Lo script continua con il comando gksu e tutto il resto.

In questo modo metterai la password sempre prima che inizio lo script vero e proprio. Spero che sia fattibile  Smiley

Registrato

psqcld
Entusiasta Emergente
**
Non Connesso Non Connesso

Sesso: Maschio
Messaggi: 1614

Media messaggi


Due Ruote ... Avanti !


Mostra profilo
« Risposta #497 inserita: 03 Giugno, 2009, 13:38:21 »

@ SAKO  Beer to beer  ottimo lavoro!  Good
Ho modificato l'uscita dallo script, per uso personale, se $restart -eq 1 con sudo poweroff invece che sudo reboot.
Per motivi di privacy spengo il PC lanciando lo script  Grin. (così cancello tutte le zozzerie)  Embarrassed
Nella risposta nr. 11 avevo addirittura suggerito di utilizzare il comando wipe per aumentare la privacy, ma non è stato gradito.
Nel menu, piuttosto che in accessori, avrei inserito lo script UCleaner in Strumenti di sistema
Registrato

Il mio primo PC  di fronte, di lato, nel sito
Attuale PC ... P-IV Prescott 2.8GHz - 1Gb RAM - ATI 1600 - Ubuntu 10.04 LTS
MultiMedia: - Dopo decenni di abbandono, ho ripreso lo studio della Fisarmonica
Fagiano
Coraggioso Chiacchierone
*
Non Connesso Non Connesso

Sesso: Maschio
Messaggi: 531

Media messaggi


Mostra profilo
« Risposta #498 inserita: 03 Giugno, 2009, 14:21:05 »

Bellissimo lavoro Sako!  Good
Fenomenale, o meglio, siete fenomenali!  Beer to beer

PS: Quale sarebbe l'ultimo script aggiornato? (testato)

Thanks  Grin
Registrato

sudo apt-get remove Silvio
lucapas
Entusiasta Emergente
**
Non Connesso Non Connesso

Messaggi: 1260

Media messaggi



Mostra profilo
« Risposta #499 inserita: 03 Giugno, 2009, 14:50:11 »

Veramente un grande lavoro!  Good

Sono d'accordo che però andrebbe inserito in "Strumenti di sistema" e bisognerebbe anche aggiornare la prima pagina della discussione ... escaflone86 se ci sei batti un colpo! Grin
Registrato
Pagine: 1 ... 23 24 [25] 26 27 ... 55   Vai su
  Stampa  
 
Vai a: