- 1. version : en
- 2. version : fr
- 2.1. Faire le point sur l’usage disque
- 2.2. La methode graphique : Stacer
- 2.3. Supprimer des paquets / applications / programmes et librairies via Synaptic
- 2.4. Dompter la taille des journaux de fonctionnement SystemD tenus par
journald
- 2.5. Supprimer les vieux paquets
snap
- 2.6. Libérer de l’espace en utilisant
apt
- 2.7. Supprimer "manuellement" les vieux noyaux
Libérer de l’espace disque avec Ubuntu / xUbuntu
1. version : en
Via the Gebull Linux User Group we had several demands about unexpectedly saturated disks on Ubuntu. It means that regular users did not copy too much files on their storage but Ubuntu did filled it up with bloat things. Let’s see what can be safely removed.
1.1. Checking the situation
$ df -h | rg '/$'
/dev/dm-0 916G 842G 74G 92% /
This command display the occupation percentage of your main storage peripheral. Here it’s 92%. So we’re about to have problems. Problems occurs at 100%. The system can’t run with a saturated disk, as most programs you use need to write temporary files to run, and you’ll need space to store your new work anyway.
After each attempt to improve the situation, you’ll be able to run this command again and see the improvement.
1.2. The easy graphical way : Stacer
Stacer is an application you can install on Ubuntu (via the graphical interface or the command line) :
$ sudo apt install stacer
Then launch stacer
:
$ stacer
It will list several way to cleanup the system, such as :
-
removing old unused snap paquet versions
-
removing old unused Linux kernel versions
-
emptying the trashbin
-
removing
apt
caches -
…
1.3. Removing unused packages / applications / programs using Synaptic
This can be done via the graphical interface Synaptic. Filter your installed packages only, sort them by size to spot the biggests and remove the one corresponding to what you remember you installed a while ago, stopped using since and forgot about.
This last point is important, you wont come up the idea of what package to remove, but browsing them via Synaptic should allow you to spot them.
In particular, games might be big applications.
Removing old Linux kernel can also be done via Synaptic.
1.4. Tame SystemD journald
log size
As of 2022 - 2025 the Ubuntu defaut `journald`setting allows this program to store gigabytes of system logs. This might be enough to bloat your storage.
You can check the size of your current logs, drop the old ones and set the tool to limit its appetite :
$ sudo journalctl --disk-usage (1)
$ sudo journalctl --vacuum-size 10M (2)
$ sudo nano /etc/systemd/journald.conf (3)
…
SystemMaxUse=10M
…
1 | check current systemd log disk usage |
2 | drop everything but the last 10MO of logs |
3 | edit the journald configuration file to set a permanent 10MO limit |
1.5. Drop old snap
versions
$ du -hs /var/lib/snapd/snaps (1)
$ sudo snap set system refresh.retain=2 (2)
$ sudo snap list --all (3)
1 | check the snap storage usage |
2 | set snap to keep only the 2 last versions of each package (default can found at 20…) |
3 | list all snaps to check what remains |
1.6. Free some space using apt
$ df -h | rg '/$'
$ /dev/sdb3 29G 27G 535M 99% /
$ sudo apt autoremove (1)
$ /dev/sdb3 29G 26G 1,1G 97% /
$ sudo apt-get autoclean (2)
$ /dev/sdb3 29G 26G 1,1G 97% /
$ sudo apt-get clean (3)
$ /dev/sdb3 29G 26G 1,2G 96% /
1 | remove packages that were installed automatically (as dependency from other packages) but are not usefull anymore (as the needing packages were removed since) |
2 | remove useless files in local cache (if you need more, jump to the next command) |
3 | remove all files in local cache |
1.7. Manually remove old Linux kernels
$ sudo dpkg --get-selections | grep linux-image (1)
$ sudo apt remove --purge linux-image-X.X.XX-XX-generic (2)
1 | list all the installed linux-image packages |
2 | remove (with all its configuration files) the designated linux-image package (one by one) |
2. version : fr
Au groupe d’utilisateur de GNU+Linux Gebull à Bressuire on a récemment eu plusieurs demandes d’utilisateurs ayant une machine, sous GNU+Linux, qui arrête du jour au lendemain de fonctionner correctement. Dans ces cas là, il s’agissait de la distribution Ubuntu et c’était le disque dur qui était plein. Les utilisateurs ont été surpris car il n’avaient pas copié eux même trop de fichier sur leur disque. Puisqu’Ubuntu à tendance à remplir le disque, voyons comment faire de la place.
2.1. Faire le point sur l’usage disque
$ df -h | rg '/$'
/dev/dm-0 916G 842G 74G 92% /
Cette commande affiche le pourcentage d’occupation du disque principal. Ici c’est 92%, les problèmes ne vont pas tarder. Un disque rempli à 100% pose problème. Le système ne peut pas fonctionner avec un disque entièrement plein car la plupart des programmes ont besoin de créer des fichiers temporaires pour fonctionner, et puis vous aurez besoin d’espace pour stocker vos propres travaux de toutes façons.
Après chaque opération de maintenance, il sera intéressant de relancer cette commande pour suivre l’avancée des résultats.
2.2. La methode graphique : Stacer
Stacer est un utilitaire graphique de maintenance qui vous pouvez installer sur Ubuntu via l’une des interfaces graphiques prévues pour ou via la commande suivante :
$ sudo apt install stacer
Il vous suffira ensuite d’invoquer la commande stacer
pour lancer l’utilitaire :
$ stacer
Stacer propose plusieurs leviers pour tenter de regagner de l’espace libre :
-
supprimer les vieux paquets
snap
plus utilisés -
supprimer les vieilles versions du noyau Linux
-
vider la corbeille
-
supprimer les caches du gestionnaire de paquet
apt
-
…
2.3. Supprimer des paquets / applications / programmes et librairies via Synaptic
Synaptic est un utilitaire graphique d’installation de paquets. Il permet de ne lister que les paquets installés, et de trier ces derniers par taille de paquet. On peut ainsi facilement repérer les gros paquets et désinstaller ceux qui correspondent à des programmes que vous avez installés il y a longtemps, dont vous ne vous servez plus et dont vous aviez peut être même oublié l’existence.
Ce dernier point est important car l’idée de supprimer ces vieux paquets ne vous viendra probablement pas spontanément tant que vous ne serez pas allé re-parcourir la liste dans Synaptic.
En particulier, les jeux peuvent facilement représenter de gros paquets qu’on oublie.
Il est enfin également possible de retirer les vieux noyaux Linux depuis Synaptic.
2.4. Dompter la taille des journaux de fonctionnement SystemD tenus par journald
Depuis au moins 2022 la configuration par défaut de journald
dans Ubuntu permet à ce programme de stocker des giga-octets de journaux de fonctionnement. Cela représente malheureusement rapidement beaucoup de place occupée pour rien si vous ignoriez même l’existence de ces journaux.
Vous pouvez vérifier la place qu’ils prennent chez vous, la diminuer et limiter durablement l’appétit de cet ogre :
$ sudo journalctl --disk-usage (1)
$ sudo journalctl --vacuum-size 10M (2)
$ sudo nano /etc/systemd/journald.conf (3)
…
SystemMaxUse=10M
…
1 | affiche l’espace disque utilisé actuellement par les logs de SystemD |
2 | supprimer tout ce qui dépasse de 10MO |
3 | éditer le fichier de configuration de journald pour imposer une limite permanente de 10MO. Il sera toujours possible d’en remettre plus pour observer un phénomène si le besoin apparait plus tard. |
2.5. Supprimer les vieux paquets snap
Ces paquets alternatifs à ceux gérés par Synaptic ont comme caractéristiques d’embarquer tout l’environnement d’exécution d’un programme au lieu de se contenter de celui fournis par le système et partagé avec les autres programmes. Ces paquets sont donc tous très gros, c’est fait exprès.
Ils sont à réserver pour vos quelques applications métier, rares, pas inclues dans le catalogue normal de Synaptic (qui compte des dizaines de milliers de références), et dont vous avez besoin des dernières versions pour travailler.
$ du -hs /var/lib/snapd/snaps (1)
$ sudo snap set system refresh.retain=2 (2)
$ sudo snap list --all (3)
1 | vérifier l’espace de stockage utilisé par les paquets snaps |
2 | configurer les snap pour que seules les 2 dernières versions de chaque paquet soient gardées sur les disque dur (il arrive que la valeur par défaut soit réglée à 20 !). Il est intéressant de garder une ou deux anciennes versions au cas où la nouvelle reçue soit défectueuse.g |
3 | lister l’ensemble des paquets snap pour voir ceux qui subsistent. |
2.6. Libérer de l’espace en utilisant apt
$ df -h | rg '/$'
$ /dev/sdb3 29G 27G 535M 99% /
$ sudo apt autoremove (1)
$ /dev/sdb3 29G 26G 1,1G 97% /
$ sudo apt-get autoclean (2)
$ /dev/sdb3 29G 26G 1,1G 97% /
$ sudo apt-get clean (3)
$ /dev/sdb3 29G 26G 1,2G 96% /
1 | supprime les vieux paquets qui ont été installés automatiquement en tant que dépendance d’autres paquets et qui ne sont plus utiles aujourd’hui car les paquets qui en avaient besoin ont été supprimés. |
2 | supprimer les fichiers inutiles du cache local d’APT |
3 | supprimer tous les fichiers du cache local d’APT |
2.7. Supprimer "manuellement" les vieux noyaux
$ sudo dpkg --get-selections | grep linux-image (1)
$ sudo apt remove --purge linux-image-X.X.XX-XX-generic (2)
1 | cette ligne liste tous les paquets contenant linux-image dans leur nom |
2 | cette ligne supprimer le noyau ciblé. Faîtes attention à garder au moins le paquet du noyau en cours d’utilisation (sinon le système va devenir instable) et au moins un noyau installé, sinon le système ne redémarrera pas. --purge permet de supprimer en plus du noyau tous ces fichiers de configuration (pour gagner encore plus de place, alors qu’ils sont conservés par défaut au cas où vous les auriez modifié, ce qui prends du temps, un temps qu’on n’a généralement pas envie de perdre en supprimant le paquet). |