Aufraeumen nach Kernel-Update

email.listen at googlemail.com email.listen at googlemail.com
Fre Jul 25 15:05:03 BST 2008


Am Fr, 25. Juli 2008 06:47:49 schrieb Florian Diesch:
> "Rainer Fischer" <raifi at gmx.net> wrote:
> > unter SIDUX kann man im (Sidux-)Kontrollzentrum ueber die
> > Kernelverwaltung nach einem Kernel-Update die zur Kernel-
> > Vorversion gehoerenden Dateien per Mausklick loeschen.
>
> Statt Dateien zu löschen solltest du die Pakete deinstallieren.
>
> > Sicher hat schon jemand ein Skript geschrieben, um auch
> > unter Ubuntu das laestige manuelle Aufraeumen zu
> > automatisieren.
> >
> > Wo finde ich es?
>
> Quick, dirty und kaum getestet:
>
> sudo apt-get --simulate --purge remove `dpkg --get-selections|awk
> '/^linux-image-[0-9]+.*install$/ {print $1}'|zenity --list  --multiple 
> --column 'Kernels' --separator=' '`
>
> (alles eine Zeile)
>
> Das Skript zeigt eine Liste der installierten Kernels an, der Nutzer
> kann die zu deinstallierenden Kernels auswählen. Benutzung auf eigene
> Gefahr. Vermutlich ist noch der eine oder andere Bug drin. Damit die
> Pakete wirklich entfernt werden das --simulate entfernen.

Es werden auch die Kernel Pakete angezeigt die einen "deinstall" Eintrag 
haben.
Ein:


dpkg --get-selections|awk '/^linux-image-[0-9]+.*install$/ {print $1 " " $2}'

Zeigt hier:
...
linux-image-2.6.15-22-386 deinstall
linux-image-2.6.15-22-k7 deinstall
linux-image-2.6.15-23-386 deinstall
linux-image-2.6.15-23-686 deinstall
linux-image-2.6.15-23-k7 deinstall
linux-image-2.6.20-5-generic deinstall
linux-image-2.6.20-5-lowlatency deinstall
linux-image-2.6.20-6-generic deinstall
linux-image-2.6.20-6-lowlatency deinstall
linux-image-2.6.22-10-generic deinstall
linux-image-2.6.24-18-generic install
linux-image-2.6.24-18-rt install
linux-image-2.6.24-19-generic install
linux-image-2.6.24-19-rt install
linux-image-2.6.24-20-generic install
linux-image-2.6.24-20-rt install
...

Abhilfe schafft ein Suchmuster Zusatz "!/deinstall/" um diese auszufiltern:

dpkg --get-selections|awk '/^linux-image-[0-9]+.*install$/ && !/deinstall/ 
{print $1 }'|zenity --list  --multiple --column='Kernel' --separator=' '

regards,
thomas