13 liens privés
Problème d'espace disque sur le serveur
Description
Je reçois quotidiennement des mels depuis mon serveur pour me signaler la diminution de l'espace disponible sur le répertoire /
de /dev/root
du serveur.
Analyse
Connexion au serveur en root
Résultat d'exécution des commandes ...
❯ grep "root" /proc/cmdline
BOOT_IMAGE=/boot/bzImage-4.9.58-xxxx-std-ipv6-64 root=/dev/md1 ro rootdelay=10
❯ mount | grep "/dev/md1"
/dev/md1 on / type ext4 (rw,relatime,errors=remount-ro,data=ordered)
❯ cd /
❯ df -h
Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur
/dev/root 20G 17G 1,4G 93% /
devtmpfs 2,0G 0 2,0G 0% /dev
tmpfs 2,0G 68K 2,0G 1% /dev/shm
tmpfs 2,0G 213M 1,8G 11% /run
tmpfs 5,0M 0 5,0M 0% /run/lock
tmpfs 2,0G 0 2,0G 0% /sys/fs/cgroup
/dev/md3 439G 239G 178G 58% /home
tmpfs 393M 0 393M 0% /run/user/1000
❯ du -h -d 1 /
24K /nonexistent
4,0K /mnt
239G /home
23M /boot
185M /root
4,0K /srv
68K /dev
du: impossible d'accéder à '/sys/kernel/slab/L2TP/IPv6': Aucun fichier ou dossier de ce type
du: impossible d'accéder à '/sys/kernel/slab/L2TP/IP': Aucun fichier ou dossier de ce type
0 /sys
4,0K /lib64
759M /tmp
15M /bin
8,0K /media
2,0G /opt
213M /run
du: impossible d'accéder à '/proc/4287/task/4287/fd/3': Aucun fichier ou dossier de ce type
du: impossible d'accéder à '/proc/4287/task/4287/fdinfo/3': Aucun fichier ou dossier de ce type
du: impossible d'accéder à '/proc/4287/fd/4': Aucun fichier ou dossier de ce type
du: impossible d'accéder à '/proc/4287/fdinfo/4': Aucun fichier ou dossier de ce type
du: impossible d'accéder à '/proc/4370': Aucun fichier ou dossier de ce type
0 /proc
23M /sbin
16K /lost+found
2,0G /usr
925M /etc
51M /lib
7,8G /var
256G /
Pour synthétiser :
/dev/root
"correspond à"/dev/mda1
et équivaut à/
/dev/mda3
héberge/home
Pour affiner le problème, j'installe rust
puis dutree
sur le serveur (voir [https://blog.shevarezo.fr/post/2018/06/13/dutree-outil-analyser-espace-disque]).
❯ dutree --exclude home -d1 / ─╯
Couldn't read IPv6 (NotFound)
Couldn't read IP (NotFound)
Couldn't read 13868 (NotFound)
[ / 24.07 GiB ]
├─ var │ ███████████████████████████████████████████████████████████████████████████│ 30% 7.44 GiB
├─ sys │ ███████████████████████████████████████████████████████████████████│ 27% 6.66 GiB
├─ swap_gitlab │ ███████████████████████████████│ 13% 3.17 GiB
├─ usr │ ███████████████████│ 8% 1.98 GiB
├─ opt │ ████████████████│ 7% 1.76 GiB
├─ root │ ██████████│ 4% 1.15 GiB
├─ etc │ ███████│ 3% 887.25 MiB
├─ tmp │ ██████│ 3% 755.80 MiB
├─ run │ █│ 0% 211.56 MiB
├─ lib │ │ 0% 49.30 MiB
├─ sbin │ │ 0% 22.00 MiB
├─ boot │ │ 0% 21.90 MiB
├─ bin │ │ 0% 14.07 MiB
├─ proc │ │ 0% 4.79 MiB
├─ dev │ │ 0% 87.80 KiB
├─ nonexistent │ │ 0% 16.31 KiB
├─ lost+found │ │ 0% 16.00 KiB
├─ media │ │ 0% 8.01 KiB
├─ lib64 │ │ 0% 4.03 KiB
├─ mnt │ │ 0% 4.00 KiB
├─ srv │ │ 0% 4.00 KiB
└─ .rnd │ │ 0% 1.00 KiB
Je vais dégager quelques applications du serveur. Ce sont celles dont je ne me sers pas. On va voir ce que ça donne.
- rss-bridge --> ok
- kanboard --> ok
- alltube --> ok
- blog ???
- diagramsnet --> ok
- phpmyadmin --> ok
- my-mind --> ok
Purge du dossier /tmp
❯ dutree -s /tmp ─╯
[ tmp 755.87 MiB ]
├─ tmp.c6YZAg7Z2H │ ███████████████████████████████████████████████████████████████████████████│ 98% 745.29 MiB
├─ tmp.rYLfDnmtWN │ │ 1% 10.39 MiB
└─ <aggregated> │ │ 0% 185.79 KiB
/home/admin_guillaume ······························································ root@principal 18:42:07 ─╮
❯ rm -rf /tmp/tmp* ─╯
/home/admin_guillaume ······························································ root@principal 18:42:57 ─╮
❯ dutree -s /tmp ─╯
[ tmp 166.58 KiB ]
└─ <aggregated> │ ███████████████████████████████████████████████████████████████████████████│ 97% 162.58 KiB
==> Gain de 750 Mo d'espace disque
Je gagne un peu de sursis ...
Retex : J'ai gagné < 12h ! Un noveau mel m'informe que :
[ERROR] L'espace de stockage / (sur lâappareil /dev/root) ne dispose que de 468 MiB (2%) espace restant (sur 18 GiB). Vous devriez vraiment envisager de nettoyer de lâespace !
❯ dutree --exclude home -s / ─╯
Couldn't read IPv6 (NotFound)
Couldn't read IP (NotFound)
Couldn't read 23525 (NotFound)
Couldn't read entry (InvalidInput)
Couldn't read entry (InvalidInput)
[ / 23.87 GiB ]
├─ var │ ███████████████████████████████████████████████████████████████████████████│ 35% 8.44 GiB
├─ sys │ ████████████████████████████████████████████████████████│ 26% 6.40 GiB
├─ swap_gitlab │ ███████████████████████████│ 13% 3.17 GiB
├─ usr │ ████████████████│ 7% 1.91 GiB
├─ opt │ ██████████████│ 7% 1.71 GiB
├─ root │ █████████│ 4% 1.15 GiB
├─ etc │ ██████│ 3% 817.93 MiB
├─ run │ │ 0% 209.15 MiB
├─ lib │ │ 0% 49.30 MiB
├─ sbin │ │ 0% 22.00 MiB
├─ boot │ │ 0% 21.90 MiB
├─ bin │ │ 0% 14.07 MiB
├─ proc │ │ 0% 4.04 MiB
└─ <aggregated> │ │ 0% 248.55 KiB
Constat : En une nuit, le répertoire /var
que j'avais un peu délesté hier pèse 1 Go de plus qu'avant mon intervention ...
Je décide de déqinstaller gitlab du serveur.
L’espace de stockage / (sur le périphérique /dev/root) a encore 9.8 GiB (54%) espace restant (sur 18 GiB) !
❯ dutree --exclude home -s / ─╯
Couldn't read IPv6 (NotFound)
Couldn't read IP (NotFound)
[ / 14.69 GiB ]
├─ sys │ ███████████████████████████████████████████████████████████████████████████│ 43% 6.40 GiB
├─ var │ ███████████████████████████████████████████████│ 27% 4.07 GiB
├─ usr │ █████████████████████│ 12% 1.91 GiB
├─ root │ ████████████│ 7% 1.15 GiB
├─ etc │ ████████│ 5% 817.60 MiB
├─ run │ █│ 1% 217.15 MiB
├─ opt │ │ 0% 51.93 MiB
├─ lib │ │ 0% 49.30 MiB
├─ sbin │ │ 0% 22.00 MiB
├─ boot │ │ 0% 21.90 MiB
├─ bin │ │ 0% 14.07 MiB
├─ proc │ │ 0% 3.13 MiB
└─ <aggregated> │ │ 0% 242.85 KiB
Merde ! Gitlab est un gouffre ! Je viens de gagner presque 10 Go dont 4 Go dans /var
...
Affaire réglée.