Il mio server cloud Ubuntu ha lasciato solo 900 MB di spazio su disco.
Svuoterò semplicemente la directory / tmp e mi chiederò se ci sono altre posizioni da ripulire.
sudo docker container prune -f && sudo docker image prune -f
Il mio server cloud Ubuntu ha lasciato solo 900 MB di spazio su disco.
Svuoterò semplicemente la directory / tmp e mi chiederò se ci sono altre posizioni da ripulire.
sudo docker container prune -f && sudo docker image prune -f
Risposte:
sudo apt-get autoremove
Ciò può eliminare un sacco di guff (kernel vecchi, ecc.) Che sono stati sostituiti. Puoi fare una cosa simile in Synaptic (caricalo e seleziona il pulsante di stato e quindi l'opzione Auto-rimovibile).
aptitude
invece di apt-get
, può ripulire mentre procedi, ma è abbastanza comune per le installazioni più vecchie raccogliere una serie di kernel installati man mano che escono gli aggiornamenti di sicurezza.
dpkg --get-selections | grep linux-image
).
Per eliminare i pacchetti scaricati (.deb) già installati (e non più necessari)
sudo apt-get clean
Rimuovere tutti gli archivi memorizzati nella cache per i pacchetti che non possono più essere scaricati (quindi pacchetti che non sono più nel repository o che hanno una versione più recente nel repository).
sudo apt-get autoclean
Per rimuovere i pacchetti non necessari (dopo aver disinstallato un'app potrebbero esserci dei pacchetti che non ti servono più)
sudo apt-get autoremove
Per eliminare le vecchie versioni del kernel
sudo apt-get remove --purge linux-image-X.X.XX-XX-generic
Se non sai quale versione del kernel rimuovere
dpkg --get-selections | grep linux-image
Fonte: Limpiando Ubuntu: comandos y programas (actualización) ( traduzione di Google )
clean
liberato un bel po 'di spazio. Immediatamente dopo, ho corso autoclean
e il mio spazio libero è diminuito di 45 MB. Correre di clean
nuovo ha rilasciato questo spazio extra.
dpkg --get-selections | grep linux-image
cui mi ha causato un errore di avvio - Ubuntu è scomparso dal menu di avvio di GRUB - questa risposta ha risolto il problema - prova a non rimuovere l'ultima immagine
sudo apt-get clean
Sarà -simply- rimuovere i pacchetti tutto la copia locale dei pacchetti che si possono avere scaricato quando si esegue un'installazione + aggiornamento. Questo quasi svuota la directory / var / cache / apt / archives. ... Quindi la prossima volta sudo apt-get update
che eseguirai scaricherai di nuovo tutto (già lì). Solo un avvertimento! .. :)
mostra i 10 più grandi sottodir nella directory corrente.
du -sk * | sort -nr | head -10
usa filelight o kDirStat per vedere dove sta andando visivamente lo spazio su disco
controlla se hai vecchi kernel per la cancellazione
ls -lh /boot
pacchetti di pulizia
sudo apt-get autoremove
sudo apt-get autoclean
vedi l'elenco di tutti i pacchetti installati, ordinati per dimensione. Se vedi qualcosa di grosso e non lo usi, disinstallalo
dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | sort -nr | less
pulire i file di lingua inutilizzati con le traduzioni (ce ne sono tonnellate)
sudo apt-get install localepurge
controlla il contenuto di / var / tmp /
du -sh /var/tmp/
controlla anche
man deborphan
Cerca file di grandi dimensioni:
find / -type f -size +1024k
o
find / -size +50000 -exec ls -lahg {} \;
grandi pacchetti installati
dpigs
questo fa parte del pacchetto: debian-goodies
ncdu
, suggerisco , che fornisce un modo rapido per vedere quali directory utilizzano lo spazio su disco
kDirStat
è sostituito dabaobab
Ho appena liberato quasi 2 concerti rimuovendo vecchi kernel e file di intestazione:
uso
uname -r
per controllare la tua versione attuale, quindi
dpkg -l linux-image-* linux-headers-*
per vedere tutti i vecchi kernel e file di intestazione, quindi
sudo apt-get remove linux-image-<XYZ> linux-headers-<XYZ>
il apt-get remove
comando supporta i caratteri jolly, quindi puoi fare apt-get remove linux-image 3.0.* linux-headers-3.0.*
ad esempio per sbarazzarti di molti contemporaneamente.
Assicurati di non uccidere rimuovi il kernel corrente ovviamente! E forse mantieni una o due versioni precedenti, per ogni evenienza ... ma non 10 o 20!
Ti consiglio davvero il programma BleachBit, che pulisce tutto su Ubuntu.
Installalo usando il seguente comando:
sudo apt-get install bleachbit
Alcuni pacchetti possono essere piuttosto grandi. Un modo conveniente per trovarli è usare dpigs
. Non è installato per impostazione predefinita ma è disponibile in debian-goodies
( progetto GitHub )
sudo apt-get install debian-goodies
Poi:
$ dpigs
419576 texlive-latex-extra-doc
204112 nvidia-319
175463 google-chrome-stable
141058 linux-image-extra-3.11.0-15-generic
113173 libreoffice-core
104822 valgrind
102322 qt4-doc
93337 blender
91105 texlive-pstricks-doc
90517 libboost1.53-dev
Ci sono alcune opzioni:
-n, --lines=N
Display the N largest packages on the system (default 10).
-s, --status=status-file
Use status-file instead of the default dpkg status file.
-S, --source
Display the largest source packages of binary packages installed
on the system.
-H, --human-readable
Display package sizes in human-readable format (like ls -lh or du -h)
-h, --help
Display this message.
Attenzione: se hai appena aggiornato il kernel, riavvia prima di eliminare le versioni precedenti!
Ricorda di controllare quale kernel stai usando:
uname -r
Quindi come root:
sudo apt-get remove --purge $(dpkg -l 'linux-*' | sed '/^ii/!d;/'"$(uname -r | sed "s/\(.*\)-\([^0-9]\+\)/\1/")"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/\1/;/[0-9]/!d')
leggi quel thread per essere sicuro di non rimuovere i kernel necessari con questo comando!
Se usi UFW, controlla la cartella del registro. Su una delle mie macchine, UFW stava generando 8 GB di log in un paio di giorni.
Puoi anche svuotare la cache apt con:
sudo apt-get clean
Prova a usare BleachBit (che si trova su sourceforge ). È un grande programma. l'idea di base è che libera rapidamente spazio su disco e rimuove gran parte della posta indesiderata nascosta nel sistema. Ci sono circa 70 applicazioni che può riconoscere e pulire. C'è anche la possibilità di usarlo per "cancellare" lo spazio libero su disco. Lo penso come CCleaner da Windows solo per Linux.
Verifica anche un numero elevato di file di registro:
sudo du -h /var/log
O come sottolinea rubo77 in encomi , è possibile utilizzare lo strumento di utilizzo del disco NCurses:
sudo ncdu /var/log
sudo ncdu /var/log
Innanzitutto, esiste uno strumento per elencare tutte le cartelle e i file di grandi dimensioni. Digita "Baobab" nel programma di avvio. Rimuovendo cartelle e file non è necessario ottenere più spazio.
Quindi, esiste un programma per la rimozione di file doppi. Il programma si chiama fslint
. Installalo inserendo
sudo apt-get install fslint
in un terminale.
o graficamente
Puoi anche cancellare la cache del pacchetto con
sudo apt-get autoclean
sudo apt-get clean
sudo apt-get autoremove
Il quarto passo è rimuovere le vecchie voci del kernel. Puoi farlo installando e aprendo Synaptic. In Synaptic, cerca le vecchie voci del kernel (tutte le voci del kernel visualizzate in GRUB tranne la più recente) e rimuovile.
Un buon passo è rimuovere la cache dell'applicazione. Fallo installando ed eseguendo bleachbit
:
sudo apt-get install bleachbit
o graficamente
Importante: la cache eliminata non può essere ripristinata!
L'ultimo passo è deframmentare il file system. Procedi come segue:
cd $HOME
git clone git://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git
cd e2fsprogs
./configure
make
Con questi comandi, scarichi e compili e2fsprogs. (Se tu o la community hai un modo migliore per installare il programma, per favore modifica!)
Assicurati anche che git-core
sia installato. In caso contrario, eseguire:
sudo apt-get install git-core
Ora puoi eseguire il programma con:
cd $HOME/e2fsprogs/misc
./e4defrag /dev/sda1 #defragment /dev/sda1
./e4defrag -v /dev/sda1 # verbose output
./e4defrag -c /dev/sda1 # see overview of fragmentation status
Sostituisci / dev / sda1 con il file system o la cartella / file che desideri. Si noti che per deframmentare un dispositivo (come HDD) sono necessari i privilegi di root, ma non per i propri file.
Fonte (tedesco): qui
sudo apt-get install ncdu
Questo script eseguirà i blocchi più grandi sulla console:
--purge
switch con apt-get
)creare un file con questo contenuto e assegnargli i diritti eseguibili:
#!/bin/bash
# Adapted from 71529-ubucleaner.sh - http://www.opendesktop.org/CONTENT/content-files/71529-ubucleaner.sh
OLDCONF=$(dpkg -l|grep "^rc"|awk '{print $2}')
CURKERNEL=$(uname -r|sed 's/-*[a-z]//g'|sed 's/-386//g')
LINUXPKG="linux-(image|headers|ubuntu-modules|restricted-modules)"
METALINUXPKG="linux-(image|headers|restricted-modules)-(generic|i386|server|common|rt|xen)"
OLDKERNELS=$(dpkg -l|awk '{print $2}'|grep -E $LINUXPKG |grep -vE $METALINUXPKG|grep -v $CURKERNEL)
YELLOW="\033[1;33m"; RED="\033[0;31m"; ENDCOLOR="\033[0m"
if [ $USER != root ]; then
echo -e $RED"Error: must be root! Exiting..."$ENDCOLOR
exit 0
fi
echo -e $YELLOW"Cleaning apt ..."$ENDCOLOR
aptitude clean
apt-get autoremove
apt-get autoclean
echo -e $YELLOW"Those packages were uninstalled without --purge:"$ENDCOLOR
echo $OLDCONF
#apt-get purge "$OLDCONF" # fixes the error in the original script
for PKGNAME in $OLDCONF ; do # a better way to handle errors
echo -e $YELLOW"Purge package $PKGNAME"
apt-cache show "$PKGNAME"|grep Description: -A3
apt-get -y purge "$PKGNAME"
done
echo -e $YELLOW"Removing old kernels..."$ENDCOLOR
echo current kernel you are using:
uname -a
aptitude purge $OLDKERNELS
echo -e $YELLOW"Emptying every trashes..."$ENDCOLOR
rm -rf /home/*/.local/share/Trash/*/** &> /dev/null
rm -rf /root/.local/share/Trash/*/** &> /dev/null
echo -e $YELLOW"Script Finished!"$ENDCOLOR
Adattato da 71529-ubucleaner.sh
Alcuni strumenti che ti aiuteranno a trovare cartelle e pacchetti di grandi dimensioni:
sudo apt-get install ncdu debian-goodies deborphan
sudo ncdu / # lists all folders by size on the console (like the gui `baobab`)
dpigs -H # shows large packages that you don't use
man deborphan # finds packages that have no packages depending on them
deborphan --guess-all --libdevel | xargs apt-get -s purge
Utilizzare localepurge per disinstallare le lingue non utilizzate nel sistema:
sudo apt-get install localepurge
LANG=c snap list --all | awk '/disabled/{print $1, $3}' | \
while read snapname revision; do \
snap remove "$snapname" --revision="$revision"; \
done
Un ottimo strumento di interfaccia grafica per soddisfare tutte le esigenze:
sudo apt-get install bleachbit
Inoltre puoi rimuovere le manpage e la documentazione come descritto nel Wiki di Ubuntu :
Creare un file /etc/dpkg/dpkg.cfg.d/01_nodoc che specifica i filtri desiderati. Esempio:
path-exclude /usr/share/doc/*
# if we need to keep copyright files for legal reasons:
# path-include /usr/share/doc/*/copyright
path-exclude /usr/share/man/*
path-exclude /usr/share/groff/*
path-exclude /usr/share/info/*
# lintian stuff is small, but really unnecessary
path-exclude /usr/share/lintian/*
path-exclude /usr/share/linda/*
Rimuovi lo stesso set di file e directory nel postinst del project-config. Esempio:
echo "Removing documentation..."
# if we need to keep copyright files for legal reasons:
# find /usr/share/doc -depth -type f ! -name copyright | xargs rm || true
# else:
find /usr/share/doc -depth -type f | xargs rm || true
rm -rf /usr/share/man/* /usr/share/groff/* /usr/share/info/* /usr/share/lintian/* /usr/share/linda/* /var/cache/man/*
uname -a
. Nel caso in cui tu abbia appena fatto un apt-get ugrade prima e abbia ottenuto un nuovo kernel, questa potrebbe essere la causa, che l'attuale kurnel che stai usando non è il più recente installato? Fai un repoot quindi prima di iniziare questo script
La directory '/ tmp' non dovrebbe mai essere ripulita manualmente se non in caso di assoluta necessità (es .: un'applicazione chiusa non ha ripulito dopo se stessa).
Puoi cercare dove si potrebbe riempire lo spazio usando il comando 'du'; di solito i luoghi di interesse si trovano all'interno di '/ var'. Per nominare due soliti sospetti '/ var / log' e '/ var / cache'. Sebbene abbia avuto alcuni utenti che installano un'utilità di backup e non si rendono mai conto che crea GB di backup incrementali in '/ var / backup' che si accumulano in una settimana o mese per riempire l'intero spazio su disco.
Usa Ubuntu-Tweak per pulire.
pulisce tutti * .deb scaricati nelle app di installazione.
Se hai già eliminato molta spazzatura ma lo spazio su disco non sembra pulito, riavvia Ubuntu. O se non vuoi riavviare, esegui il comando come in una domanda simile .
sudo service rsyslog restart
Quando ho bisogno di fare più spazio libero sui server, utilizzo questo comando. Trova tutti i file più grandi di 50 MB e "du -h" rende un elenco migliore di file e "ordina -n" dopo che pipe crea un elenco numerico ordinato per dimensione del file.
find / -size +50M -type f -exec du -h {} \; | sort -n
ncdu /
invece
du -h
, utilizzare sort -h
anche.