Αντρω δι Νεξυνω

[Linux] Grandi pulizie

« Older   Newer »
  Share  
view post Posted on 8/3/2014, 05:55
Avatar

Nubbio x Sempre

Group:
Moderazione globale
Posts:
7,226

Status:


Poco fa, dopo aver aggiornato il sistema principale, mi son reso conto che la partizione dedicata a root presentava una occupazione di una decina di Gb di spazio ... un filino di troppo! Rimboccate le maniche, malgrado l'arietta delle 4 del mattino, ho dato la caccia ai foglietti di appunti sparsi sui ripiani delle scrivanie e nella decina di cassetti che uso e, dato che non restano mai dove li lascio :ira: , ho deciso che è ora di raccoglierli da qualche parte che di norma ho a portata di mano ... questo è un buon posto e, giacché ci sono, li metto in forma comprensibile nel remoto caso qualcuno cui possano servire ci inciampi :occio:

Quanto segue è per i sistemi debian based, in particolare per quella ipertrofica distro che è Ubuntu, nella quale i Kernel obsoleti si adagiano come polvere ... in effetti, sui 10.3 Gb di occupazione essi costituiscono una grossa fetta, e dando il classico "df -v" vedo
CODICE
df -v
File system    1K-blocchi     Usati Disponib. Uso% Montato su
/dev/sda5        31496092  10814720  19081424  37% /
udev              4035540         4   4035536   1% /dev
tmpfs             1617744       836   1616908   1% /run
none                 5120         0      5120   0% /run/lock
none              4044352       156   4044196   1% /run/shm
/dev/sda6        54135260  19758692  31626616  39% /home
/dev/sda7       356227984 219907856 118224724  66% /media/DATA

che la partizione "/" (root) è già giunta, in pochi mesi, al 37% di occupazione, niente di critico, dato che passate esperienze mi portano ad essere generoso anche con lei, ma dato che mi ricordo di controllare ad ogni cambio di governo, quindi spesso, ultimamente, è proprio il caso di spazzare un po' :occio:

Come dicevo, le immagini dei vecchi Kernel di norma rappresentano la parte più sostanziosa di occupazione non necessaria, tra quella e gli headers son capaci di farsi fuori un bel po' di disco, guardato quale è il kernel in uso con "uname -r" (non è il caso di eliminarlo) ci si può rilevate la lista dei kernel installati con dpkg, il comando "dpkg --list | grep linux-image" ci farà sapere, nel mio caso
CODICE
uname -r
3.2.0-60-generic
xxxxxxx@xxxxxxx-System-Product-Name:~$ dpkg --list | grep linux-image
ii  linux-image-3.2.0-41-generic           3.2.0-41.66                                   Linux kernel image for version 3.2.0 on 64 bit x86 SMP
ii  linux-image-3.2.0-43-generic           3.2.0-43.68                                   Linux kernel image for version 3.2.0 on 64 bit x86 SMP
ii  linux-image-3.2.0-44-generic           3.2.0-44.69                                   Linux kernel image for version 3.2.0 on 64 bit x86 SMP
ii  linux-image-3.2.0-45-generic           3.2.0-45.70                                   Linux kernel image for version 3.2.0 on 64 bit x86 SMP
ii  linux-image-3.2.0-48-generic           3.2.0-48.74                                   Linux kernel image for version 3.2.0 on 64 bit x86 SMP
ii  linux-image-3.2.0-49-generic           3.2.0-49.75                                   Linux kernel image for version 3.2.0 on 64 bit x86 SMP
ii  linux-image-3.2.0-51-generic           3.2.0-51.77                                   Linux kernel image for version 3.2.0 on 64 bit x86 SMP
ii  linux-image-3.2.0-52-generic           3.2.0-52.78                                   Linux kernel image for version 3.2.0 on 64 bit x86 SMP
ii  linux-image-3.2.0-53-generic           3.2.0-53.81                                   Linux kernel image for version 3.2.0 on 64 bit x86 SMP
ii  linux-image-3.2.0-54-generic           3.2.0-54.82                                   Linux kernel image for version 3.2.0 on 64 bit x86 SMP
ii  linux-image-3.2.0-55-generic           3.2.0-55.85                                   Linux kernel image for version 3.2.0 on 64 bit x86 SMP
ii  linux-image-3.2.0-56-generic           3.2.0-56.86                                   Linux kernel image for version 3.2.0 on 64 bit x86 SMP
ii  linux-image-3.2.0-57-generic           3.2.0-57.87                                   Linux kernel image for version 3.2.0 on 64 bit x86 SMP
ii  linux-image-3.2.0-58-generic           3.2.0-58.88                                   Linux kernel image for version 3.2.0 on 64 bit x86 SMP
ii  linux-image-3.2.0-59-generic           3.2.0-59.90                                   Linux kernel image for version 3.2.0 on 64 bit x86 SMP
ii  linux-image-3.2.0-60-generic           3.2.0-60.91                                   Linux kernel image for version 3.2.0 on 64 bit x86 SMP
ii  linux-image-generic                    3.2.0.60.71                                   Generic Linux kernel image

ce ne sono un bel po' ... si vede che il governo letta mi era proprio sfuggito :lol:

Ognuna di quelle immagini pesa circa 150 Mb, cui di norma sono associati i relativi headers, un altro centinaio di Mb, li potrete vedere con analogo comando dpkg, "dpkg --list | grep linux-headers".

Per esperienze passate evito di tenermi solo l'ultimo kernel installato, ho acquisito l'abitudine di tenermene gli ultimi tre, così se combino pasticci nella versione corrente ho buone seranze di far ripartire il sistema con una delle precedenti e rimediare ;)

Per eliminare una immagine e relativo header utilizzo spt-get, procedendo dal più vecchio, nel mio caso il 3.2.0-41, al più recente, per eliminare l'immagine darò "sudo apt-get purge linux-image-3.2.0-41-generic" mentre per l'header sarà "sudo apt-get purge linux-headers-3.2.0-41", qua l'output dei comandi, per il file immagine

sudo apt-get purge linux-image-3.2.0-41-generic
[sudo] password for xxxxxxx:
Lettura elenco dei pacchetti... Fatto
Generazione albero delle dipendenze
Lettura informazioni sullo stato... Fatto
Il seguente pacchetto è stato installato automaticamente e non è più richiesto:
openjdk-7-jre-lib
Usare "apt-get autoremove" per rimuoverli.
I seguenti pacchetti saranno RIMOSSI:
linux-image-3.2.0-41-generic*
0 aggiornati, 0 installati, 1 da rimuovere e 0 non aggiornati.
Dopo quest'operazione, verranno liberati 150 MB di spazio su disco.
Continuare [S/n]? s
(Lettura del database... 613123 file e directory attualmente installati.)
Rimozione di linux-image-3.2.0-41-generic...
Examining /etc/kernel/prerm.d.
run-parts: executing /etc/kernel/prerm.d/dkms 3.2.0-41-generic /boot/vmlinuz-3.2.0-41-generic
dkms: removing: ndiswrapper 1.57 (3.2.0-41-generic) (x86_64)

-------- Uninstall Beginning --------
Module: ndiswrapper
Version: 1.57
Kernel: 3.2.0-41-generic (x86_64)
-------------------------------------

Status: Before uninstall, this module version was ACTIVE on this kernel.

ndiswrapper.ko:
- Uninstallation
- Deleting from: /lib/modules/3.2.0-41-generic/updates/dkms/
- Original module
- No original module was found for this module on this kernel.
- Use the dkms install command to reinstall any previous module version.

depmod......

DKMS: uninstall completed.
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 3.2.0-41-generic /boot/vmlinuz-3.2.0-41-generic
update-initramfs: Deleting /boot/initrd.img-3.2.0-41-generic
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 3.2.0-41-generic /boot/vmlinuz-3.2.0-41-generic
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-3.2.0-60-generic
Found initrd image: /boot/initrd.img-3.2.0-60-generic
Found linux image: /boot/vmlinuz-3.2.0-59-generic
Found initrd image: /boot/initrd.img-3.2.0-59-generic
Found linux image: /boot/vmlinuz-3.2.0-58-generic
Found initrd image: /boot/initrd.img-3.2.0-58-generic
Found linux image: /boot/vmlinuz-3.2.0-57-generic
Found initrd image: /boot/initrd.img-3.2.0-57-generic
Found linux image: /boot/vmlinuz-3.2.0-56-generic
Found initrd image: /boot/initrd.img-3.2.0-56-generic
Found linux image: /boot/vmlinuz-3.2.0-55-generic
Found initrd image: /boot/initrd.img-3.2.0-55-generic
Found linux image: /boot/vmlinuz-3.2.0-54-generic
Found initrd image: /boot/initrd.img-3.2.0-54-generic
Found linux image: /boot/vmlinuz-3.2.0-53-generic
Found initrd image: /boot/initrd.img-3.2.0-53-generic
Found linux image: /boot/vmlinuz-3.2.0-52-generic
Found initrd image: /boot/initrd.img-3.2.0-52-generic
Found linux image: /boot/vmlinuz-3.2.0-51-generic
Found initrd image: /boot/initrd.img-3.2.0-51-generic
Found linux image: /boot/vmlinuz-3.2.0-49-generic
Found initrd image: /boot/initrd.img-3.2.0-49-generic
Found linux image: /boot/vmlinuz-3.2.0-48-generic
Found initrd image: /boot/initrd.img-3.2.0-48-generic
Found linux image: /boot/vmlinuz-3.2.0-45-generic
Found initrd image: /boot/initrd.img-3.2.0-45-generic
Found linux image: /boot/vmlinuz-3.2.0-44-generic
Found initrd image: /boot/initrd.img-3.2.0-44-generic
Found linux image: /boot/vmlinuz-3.2.0-43-generic
Found initrd image: /boot/initrd.img-3.2.0-43-generic
Found memtest86+ image: /boot/memtest86+.bin
Found Microsoft Windows XP Professional on /dev/sda1
done
Eliminazione dei file di configurazione di linux-image-3.2.0-41-generic...
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 3.2.0-41-generic /boot/vmlinuz-3.2.0-41-generic
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 3.2.0-41-generic /boot/vmlinuz-3.2.0-41-generic
localepurge: Disk space freed in /usr/share/locale: 0 KiB
localepurge: Disk space freed in /usr/share/man: 0 KiB
localepurge: Disk space freed in /usr/share/gnome/help: 0 KiB
localepurge: Disk space freed in /usr/share/omf: 0 KiB
localepurge: Disk space freed in /usr/share/doc/kde/HTML: 0 KiB

Total disk space freed by localepurge: 0 KiB



Bel pacco di messaggi vero? :occio: il "purge" contenuto nei comandi provoca anche la rimozione dei moduli correlati a quella immagine e non più necessari oltre che l'aggiornamento di Grub ... l'output dell'header sarà
CODICE
$ sudo apt-get purge linux-headers-3.2.0-41
Lettura elenco dei pacchetti... Fatto
Generazione albero delle dipendenze      
Lettura informazioni sullo stato... Fatto
Il seguente pacchetto è stato installato automaticamente e non è più richiesto:
 openjdk-7-jre-lib
Usare "apt-get autoremove" per rimuoverli.
I seguenti pacchetti saranno RIMOSSI:
 linux-headers-3.2.0-41* linux-headers-3.2.0-41-generic*
0 aggiornati, 0 installati, 2 da rimuovere e 0 non aggiornati.
Dopo quest'operazione, verranno liberati 67,6 MB di spazio su disco.
Continuare [S/n]? s
(Lettura del database... 608986 file e directory attualmente installati.)
Rimozione di linux-headers-3.2.0-41-generic...
Rimozione di linux-headers-3.2.0-41...
localepurge: Disk space freed in /usr/share/locale: 0 KiB
localepurge: Disk space freed in /usr/share/man: 0 KiB
localepurge: Disk space freed in /usr/share/gnome/help: 0 KiB
localepurge: Disk space freed in /usr/share/omf: 0 KiB
localepurge: Disk space freed in /usr/share/doc/kde/HTML: 0 KiB

Total disk space freed by localepurge: 0 KiB


Decisamente più contenuta, nel caso, per qualche motivo (p.e. installazioni molto vecchie che non lo facevano) non vi viene aggiornato automaticamente grub, aggiornatelo manualmente, il comando per la versione 2 è "sudo update-grub2" ... per la precedente non ricordo più, datevi un bel man :) ... è tutto per adesso, proseguirò tra qualche ora, ho da spolverare ;)

Edited by nuzzopippo - 11/3/2014, 13:31
 
Web  Top
view post Posted on 8/3/2014, 10:30
Avatar

Nubbio x Sempre

Group:
Moderazione globale
Posts:
7,226

Status:


Bene completate le grandi pulizie e rifocillati, e scesi da 10.3 a 6.91 Gb l'occupazione della root, si può dare un'ulteriore spolverata, probabilmente vi sarà una qualche libreria non più utile perché rimossi i kernel utilizzanti, per rimuoverla useremo sempre apt-get, il comando è "sudo apt-get autoremove" per eliminare tali librerie e quindi "sudo apt-get autoclean" che rimuoverà i relativi pacchetti di installazione, nel mio caso la risposta è stata :
CODICE
sudo apt-get autoremove
[sudo] password for xxxxxxx:
Lettura elenco dei pacchetti... Fatto
Generazione albero delle dipendenze      
Lettura informazioni sullo stato... Fatto
I seguenti pacchetti saranno RIMOSSI:
 openjdk-7-jre-lib
0 aggiornati, 0 installati, 1 da rimuovere e 0 non aggiornati.
Dopo quest'operazione, verranno liberati 227 kB di spazio su disco.
Continuare [S/n]? s
(Lettura del database... 272957 file e directory attualmente installati.)
Rimozione di openjdk-7-jre-lib...
xxxxxxx@xxxxxxx-System-Product-Name:~$ sudo apt-get autoclean
Lettura elenco dei pacchetti... Fatto
Generazione albero delle dipendenze      
Lettura informazioni sullo stato... Fatto
Del linux-generic 3.2.0.59.70 [1718 B]
Del libgnutls26 2.12.14-5ubuntu3.6 [459 kB]
Del firefox 27.0+build1-0ubuntu0.12.04.1 [31,3 MB]
Del linux-libc-dev 3.2.0-59.90 [863 kB]
Del firefox-globalmenu 27.0+build1-0ubuntu0.12.04.1 [8960 B]
Del firefox-locale-zh-hans 27.0+build1-0ubuntu0.12.04.1 [356 kB]
Del firefox-locale-it 27.0+build1-0ubuntu0.12.04.1 [277 kB]
Del firefox-locale-en 27.0+build1-0ubuntu0.12.04.1 [608 kB]
Del linux-headers-generic 3.2.0.59.70 [2360 B]
Del linux-image-generic 3.2.0.59.70 [2370 B]
Del flashplugin-installer 11.2.202.336ubuntu0.12.04.1 [6936 B]

Come potete ben vedere dall'output, qua si tratta di pochi Kb se non proprio di byte, come ho detto, stiamo spolverando :occio: ... tra la polvere vi sono certamente anche vecchi files di configurazione che non servono più, "sudo apt-get purge" è il comando giusto:D

Cosa altro? ... potremmo eliminare tutti i pacchetti di installazione, anche quelli dei programmi attualmente, ci potrebberò servire qualora volessimo re-installare un pacchetto, però occupano un bel po' di spazio, forse conviene, per farlo daremo "sudo apt-get clean"

Altra cosa da tener presente è che possono essere rimaste librerie "orfane", nel senso che sono validissime ma non c'è più alcun programma che le usa, per individuarle è disponibile un utile tools, "deborphan", per installarlo date un "sudo apt-get install deborphan" e quindi per utilizzarlo date "sudo deborphan | xargs sudo apt-get -y remove --purge" (complicatuccio da ricordare vero? ecco a che servono questi appunti ;)
nella pulizia in corso l'output è stato :
CODICE
sudo deborphan | xargs sudo apt-get -y remove --purge
Lettura elenco dei pacchetti... Fatto
Generazione albero delle dipendenze      
Lettura informazioni sullo stato... Fatto
I seguenti pacchetti saranno RIMOSSI:
 firefox-globalmenu* libutouch-grail1* thunderbird-globalmenu*
0 aggiornati, 0 installati, 3 da rimuovere e 0 non aggiornati.
Dopo quest'operazione, verranno liberati 521 kB di spazio su disco.
(Lettura del database... 272953 file e directory attualmente installati.)
Rimozione di firefox-globalmenu...
Rimozione di libutouch-grail1...
Eliminazione dei file di configurazione di libutouch-grail1...
Rimozione di thunderbird-globalmenu...
Elaborazione dei trigger per libc-bin...
ldconfig deferred processing now taking place


Cos'altro ... a già le localizzazioni! : durante l'installazione dei pacchetti applicativi vendono installati anche vari pacchetti di conversione linguistica, credo che alla maggior parte di noi non interessi avere un menu in aramaico no? ... utile tools è "localepurge", per installarlo date "sudo apt-get install localepurge",durante l'installazione vi uscirà una finestra in formato testo con un box in cui potrete conservere le localizzazioni che volete avere, io lascio l'inglese inglese" che sono varie codifiche individuate da "en_GB...etc", l'inglese degli USA "en_US...ecc" e l'italiano "italiano" che avrà estensione "it_IT...ecc" e poi, dopo la scelta delle lingue, rispndete a un po' di domande e sarà configurto, potrete sempre rifare la configurazione, se non vi aggrada in un secondo momento con "sudo dpkg-reconfigure localepurge"
per utilizzarlo seplicemente "sudo localepurge" ... nel mio caso non pulisce più niente, essendo già fatta la localizzazione in fase di installazione ... ma nel caso :occio:

Per la pulizia della root è tutto, se avete ulteriori spunti suggerite pure :D

Edited by nuzzopippo - 11/3/2014, 13:34
 
Web  Top
1 replies since 8/3/2014, 05:55   287 views
  Share