CentOS 7 – Come liberare spazio sul disco Una serie di utili comandi da terminale per liberare spazio su disco su Linux CentOS 7

Protect CentOS from unwanted SSH failed login attempts with Fail2Ban

In questo articolo cercheremo di riassumere una serie di operazioni che possono essere facilmente eseguite da linea di comando (terminal) per liberare spazio su disco su una macchina CentOS 7: ovviamente, le stesse tecniche possono essere facilmente eseguite anche su altri sistemi Linux, con le piccole differenze del caso.

Visualizzare lo spazio residuo

Prima di addentrarci nelle varie possibilità a nostra disposizione è opportuno trovare il modo corretto per visualizzare la quantità di spazio disponibile. Fortunatamente ci sono tanti strumenti che ci consentono di farlo, il migliore dei quali è sicuramente gt5 – uno strumento freeware che mostra lo spazio su disco disponibile usando un’interfaccia colorata molto ordinata e facilmente comprensibile:

CentOS 7 - Come liberare spazio sul disco

Se vogliamo utilizzare gt5 possiamo scaricarlo dalla pagina ufficiale del progetto.

Tuttavia, possiamo ottenere un risultato del tutto simile anche senza installare strumenti di terze parti, utilizzando l’utility df inclusa nella maggior parte delle installazioni di CentOS. Ecco il comando da utilizzare per visualizzare la quantità di spazio disponibile all’interno dei vari volumi del sistema:

Il comando di cui sopra dovrebbe riportare le seguenti informazioni:

CentOS 7 - Come liberare spazio sul disco

Come si può vedere dalla screenshot, l’unità che ci interessa è quella relativa alla cartella /var/, che – nell’esempio di cui sopra – ha soltanto 4.3 MB liberi. Nei prossimi paragrafi vedremo come è possibile liberare spazio su questa unità.

Installare le yum-utils

La prima cosa da fare per iniziare la nostra attività di recupero è installare il package denominato um-utils mediante il seguente comando:

Questo pacchetto consente di utilizzare una serie di strumenti integrati con il package manager yum che risulteranno molto utili per individuare (ed eliminare) i pacchetti inutilizzati.

Nel caso improbabile in cui la quantità di spazio libero sul disco non fosse sufficiente per installare yum-utils, la cosa migliore che possiamo fare è eliminare manualmente alcuni file di log dalla cartella /var/log: fortunatamente il pacchetto è abbastanza piccolo, quindi dovrebbe essere sufficiente eliminare un paio di file di log (per un totale di ~ 1-2 MB) per liberare lo spazio necessario.

Eliminare i file di log

Ora possiamo cominciare a liberare spazio sul nostro sistema. Iniziamo con il comando seguente, che ci consentirà di eliminare tutti i file di log presenti nella cartella  /var/ più vecchi di 30 giorni e, contemporaneamente, trutti quelli più vecchi di 7 giorni e maggiori di 50MB:

Subito dopo aver eseguito questo comando consigliamo di eseguire nuovamente gt5 o df -h per vedere quanto spazio siamo riusciti a recuperare.

Ripulire la cache di YUM

La prossima cosa da fare è eliminare la cache del package manager YUM, operazione che può essere effettuata eseguendo i seguenti comandi:

Anche in questo caso, dopo aver svolto questa operazione, sarà utile eseguire nuovamente gt5 o df -h per vedere quanto spazio siamo riusciti a recuperare.

Rimozione degli pacchetti inutilizzati

Un’altra operazione molto utile che possiamo fare per recuperare spazio è rimuovere i cosiddetti “orphan packages”, ovvero i pacchetti installati come dipendenze di software che poi abbiamo successivamente disinstallato e che quindi non hanno più alcuno scopo.

Proviamo a spiegare un pò meglio il concetto di “orphan package”: immaginiamo di scaricare un pacchetto A, che necessita della presenza di un pacchetto B (che viene quindi scaricato e installato a sua volta); nel momento in cui decidiamo di disinstallare il pacchetto A, il pacchetto B resta presente all’interno del sistema, ed acquisisce lo status di “orphan package” in quanto non più utilizzato da nessun altro pacchetto.

Ecco il comando terminal per scoprire quali orphan packages risultano installati sul nostro sistema:

Ed ecco il comando per rimuoverli:

La differenza sostanziale tra i due comandi è che il primo è una semplice scansione e non comporta quindi modifiche al sistema: può quindi essere utilizzato per visualizzare l’elenco dei pacchetti che, secondo yum-utils, è possibile disinstallare in quanto non utilizzati da nessun altro pacchetto. A quel punto, la scelta spetta a noi: se non ci interessa mantenerli installati possiamo decidere di rimuoverli tutti utilizzando il secondo comando; alternativamente, possiamo sempre disinstallarli a mano utilizzando il comando yum remove.

IMPORTANTE: A prescindere da come intendiamo disinstallare gli orphan package, è fondamentale lanciare il primo comando (la scansione) a seguito di ogni rimozione, per essere certi che la disinstallazione di ciascun pacchetto non abbia prodotto ulteriori “orfani”, e così via.

Ripulire la cache di WordPress CLI

Se la macchina CentOS sulla quale si sta recuperando spazio è un server Web che ospita una o più istanze di WordPress, potrebbe essere opportuno ripulire anche la cache della CLI di WordPress. Ecco due comandi che consentono di eliminare tutta la cache accumulata nella cartella generale e in quella specifica di ciascun utente:

Eliminare i Kernel precedenti

Ogni volta che il kernel CentOS viene aggiornato, il kernel precedente viene mantenuto dal sistema per motivi di sicurezza e salvato in una posizione apposita del disco: se abbiamo bisogno di spazio, possiamo decidere di sfoltire un pò questo archivio storico, mantenedo installati solo gli ultimi.

Ecco il comando che consente di eliminare tutti i kernel precedenti mantenendo soltanto i 2 più recenti:

Sui server che vengono costantemente aggiornati questo comando consente spesso di recuperare una considerevole quantità di spazio, come mostrato dalla screenshot seguente.

CentOS 7 - Come liberare spazio sul disco

Rimozione della cache di Composer

Se la macchina CentOS è un server Web che utilizza l’interprete di comandi PHP  potrebbe essere utile ripulire la cache di Composer, il noto e utilizzatissimo dependency manager di PHP; ogni volta che viene utilizzato per effettuare l’update di pacchetti e librerie, Composer crea per impostazione predefinita una cache delle versioni precedenti: questa cache può essere rimossa per liberare spazio su disco con i seguenti comandi:

Conclusioni

Per il momento è tutto: ci auguriamo che questo elenco di workaround possano aiutarvi a liberare un pò di spazio sul disco del vostro sistema CentOS. Se siete a conoscenza di altri metodi per recuperare spazio, sentitevi liberi di comunicarceli utilizzando la sezione Commenti in fondo a questa pagina: saremo felici di aggiungerli all’elenco. Alla prossima!

 

About Ryan

IT Project Manager, Web Interface Architect e Lead Developer di numerosi siti e servizi web ad alto traffico in Italia e in Europa. Dal 2010 si occupa anche della progettazione di App e giochi per dispositivi Android, iOS e Mobile Phone per conto di numerose società italiane. Microsoft MVP for Development Technologies dal 2018.

View all posts by Ryan

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.