Script per ripulire il sistema dai kernel non più utilizzati

Guides, tutorials & docs
Post Reply
User avatar
odites
Utente
Utente
Posts: 113
Joined: 18 July 2008, 19:47

Script per ripulire il sistema dai kernel non più utilizzati

Post by odites »

PER ORA È DI PROVA, FINO A CHE I TESTER MIB NON DANNO L'OK NON PROVATELO

salvare il testo in un file .sh ed eseguirlo da root

Code: Select all

#!/bin/sh
echo "Script Universale Per Pulire Il Sistema Da Kernel Inutili - Ver: 0.4"
echo "M.I.B. - 2009 by  Odites"

#immagini dei kernel presenti in /boot
zup=$(ls /boot/vmlinuz-* | sed "s/\/boot\/vmlinuz-desktop//g" | sed "s/\/boot\/vmlinuz-desktop586//g" | sed "s/\/boot\/vmlinuz-server//g")

#rpm corrispondenti alle immagini dei kernel
zap=$(rpm -qf ${zup})

#numero dei kernel installati
zog=$(echo ${zup} | wc -w)

#elenco dei kernel
echo "Quali di questi kernel vuoi conservare?"
for cic in $zap
do
ziz=$((++ziz))
echo "${ziz}) ${cic}"
done
read zip

#kernel buono
zix=$(echo $zap | awk -v zop=$zip '{print $zop}')

#kernel da eliminare sia quelli non utilizzati, che tutti i devel e latest
zex=$(echo $zap | sed "s/${zix}//g")
dre=$(rpm -qa kernel-*-devel*)
lit=$(rpm -qa kernel-*-latest*)

#Settaggio del tipo, del numero e dei suffissi, sia quello finale che quello completo
tip=$(echo ${zix%-2*} | sed "s/kernel-//g")
num=$(echo $zix | sed "s/kernel-${tip}-//g" | awk -F "-" '{print $1}')

#Disinstalla kernel inutili e tutti i devel
rpm -e --nodeps $zex $dre $lit

#installa latest
/usr/sbin/urpmi kernel-${tip}-latest-${num}

echo "Ti interessano i devel del kernel? (di solito si usano per compilare alcuni moduli) [si | no}" && read risp
if [ $risp == "si" ]
then /usr/sbin/urpmi kernel-${tip}-devel-latest-${num}
fi

echo "ciao ciao"
Last edited by odites on 26 May 2009, 21:33, edited 4 times in total.

User avatar
NicCo
Amministratore
Amministratore
Posts: 4765
Joined: 6 December 2007, 19:54

Re: Script per ripulire il sistema dai kernel non più utilizzati

Post by NicCo »

Ottimo, avevo chiesto io ad Odites se potesse realizzare uno script con la finalità di ripulire il PC dai numerosi kernel non più utilizzati, ed ritornare cos' con un Boot iniziale ed un Grub meno pieno di voci inutili.

Invito i nostri tester, o i piu coraggiosi e competenti, a provarlo, magari su una VM sperimentale, non sul PC di uso giornaliero, per evitare dei possibili dispiaceri.


Ciao
.
--- Professional experience ---
Kernel designer, engineer, maintainer and tester for ROSA Desktop and OpenMandriva Lx O.S.

--- currently I'm playing with ---
LTS Kernels > Linux 4.1.12-nrjQL <<< Linux 3.18.17-nrjQL <<< Linux 3.14.46-nrjQL
EOL Kernels > Linux 3.19.8-nrjQL <<< Linux 3.17.8-nrjQL <<< Linux 3.15.10-nrjQL

User avatar
othoth-tux
Collaboratore
Collaboratore
Posts: 338
Joined: 4 February 2008, 19:55
OpenMandriva: OpenSuse 12.2
Kernel: 3.4.x
Desktop: Gnome3
country: Italy

Re: Script per ripulire il sistema dai kernel non più utilizzati

Post by othoth-tux »

testato il funzionamento su 2009.1 32bit.
ti pone davanti una scelta su quale kernel conservare, ha correttamente rimosso i due vecchi kernel (anche da grub) e mi ha lasciato solo il 2.6.29.4 che si avvia regolarmente. propone pure di installare i devel per eventuali moduli da compilare.
un ottimo lavoro odites, bravo bravo bravo :D :D :D

User avatar
NicCo
Amministratore
Amministratore
Posts: 4765
Joined: 6 December 2007, 19:54

Re: Script per ripulire il sistema dai kernel non più utilizzati

Post by NicCo »

Una domanda, lo script adesso, ti consente di conservare un solo kernel, oppure anche multipli kernel?

Occorre che consenta di lasciarne di multipli, così:

Se uno ne avesse 4:
- 2.6.29.1mnb
- 2.6.29.3mnb
- 2.6.29.4mib
- 2.6.29.4rt

E ne volesse tenere 2:
- 2.6.29.4mib
- 2.6.29.4rt

Cancellando
- 2.6.29.1mnb
- 2.6.29.3mnb

Dovrebbero esserne selezionabili 2 o più, non solamente uno, e dovrebbe essere possibile tenerseli!

Fatemi sapere, faccio queste domande, perchè non ho provato personalmente lo script, e cerco di prevedere cosa occorre realmente agli utenti, ancor prima che le features siano richieste.

Se funziona già così, potremmo a breve fare un articolo anche sul Blog, per pubblicizzare lo script e consigliarlo!


Un'altra feature utile, se fosse possibile implementarla (magari è già così ed io non lo so),
sarebbe la possibilità di eliminare anche di tutti i files rpm collegati ai vari kernel da cancellare:

Intendo i vari moduli kernel statici collegati (nvidia, ati, ecc.) riconoscibili dal numero di versione del kernel che portano nel nome stesso del pacchetto, che non si vedranno di certo nel Grub, ma sprecano spazio sull'HD quando rimangono orfani del loro kernel
.
--- Professional experience ---
Kernel designer, engineer, maintainer and tester for ROSA Desktop and OpenMandriva Lx O.S.

--- currently I'm playing with ---
LTS Kernels > Linux 4.1.12-nrjQL <<< Linux 3.18.17-nrjQL <<< Linux 3.14.46-nrjQL
EOL Kernels > Linux 3.19.8-nrjQL <<< Linux 3.17.8-nrjQL <<< Linux 3.15.10-nrjQL

User avatar
rugyada
Amministratore
Amministratore
Posts: 1562
Joined: 14 July 2008, 22:58
ROSA: ROSA.Fresh R8 64bit
OpenMandriva: OMLx 4.2
Kernel: kernel-release
Desktop: KDE tutta la vita
country: Italy

Re: Script per ripulire il sistema dai kernel non più utilizzati

Post by rugyada »

e bravo il nostro SuperScripter. ;)
complimenti Odites, credo che sarà utile a molti utenti.
Image
ciauu ciauu, ruru

MIB... e le stelle stanno a guardare.
«E' bello avere delle certezze, tipo la terra gira, il sole è caldo, se ti prendi con quelli del MIB vieni fanculizzato. Cose semplici, in fondo» (M.C.)

User avatar
othoth-tux
Collaboratore
Collaboratore
Posts: 338
Joined: 4 February 2008, 19:55
OpenMandriva: OpenSuse 12.2
Kernel: 3.4.x
Desktop: Gnome3
country: Italy

Re: Script per ripulire il sistema dai kernel non più utilizzati

Post by othoth-tux »

infatti permette di tenere un solo kernel, sarebbe cosa buona e giusta poter scegliere quanti e quali kernel tenersi.

User avatar
odites
Utente
Utente
Posts: 113
Joined: 18 July 2008, 19:47

Re: Script per ripulire il sistema dai kernel non più utilizzati

Post by odites »

Scusate ma per motivi personali sarò assente qualche giorno

Comunque la possibilità di tenere più kernel è semplice da implementare, e credo che troverò un modo per eliminare anche i moduli dipendenti, visto che ho messo come varibile esterna il numero di versione quindi credo che non sia difficile...

Rinnove le mie scuse per l'assenza :(

PS: grazie per avermelo testato, tra l'altro un bug è stato scoperto da toto che ringrazio moltissimo

User avatar
Roberto_65
Collaboratore
Collaboratore
Posts: 516
Joined: 6 December 2007, 23:56
OpenMandriva: 2009.1
Kernel: i686 x86_64
Desktop: Gnome Xfce4
Location: Triangolo delle Bermude
Contact:

Re: Script per ripulire il sistema dai kernel non più utilizzati

Post by Roberto_65 »

Ho riscritto lo script con l'interfaccia grafica.
Lo trovate quà: http://mib.pianetalinux.org/mib/forum/i ... opic#p4510
Roberto_65
Packager delle MIB-Live
Il creatore delle MIB-Live
L'inventore di MIB-LiveToFlash
Triangolo delle Bermude http://www.sitohd.com/siti/3209

Post Reply