Posted by Florian | Posted in Geekisme, Logiciels Libres, Sysadmin | Posted on 17-10-2013
Étiquettes : df, inodes, linux, no space left, tmpfs
Des services se plaignent dans ton syslog d’un espace disque insuffisant, au hasard parce que tu as voulu faire le malin en déplaçant dans un ramdisk un dossier soumis à un nombre élevé d’IOPS (ce qui peut rester très malin)…
Oct 17 12:00:00 mail postfix/cleanup[12345]: warning: mail_queue_enter: create file incoming/12345.67890: No space left on device
… pourtant un df -h t’annonce que tu es large niveau espace disque.
Tu as envie de dire : WTF ?! Je comprends.
root@home:~#df -h /chemin
Sys. de fich. Tail. Occ. Disp. %Occ. Monté sur
tmpfs 2048000 1167088 880912 57% /chemin
Keep cool.
Jette un coup d’oeil au nombre d’inodes que le système de fichiers peut accepter, grâce à df -i :
root@home:~#df -i /chemin
Sys. de fich. Tail. Occ. Disp. %Occ. Monté sur
tmpfs 20480 20480 0 100% /chemin
Bingo ! Il semble qu’on soit au taquet des inodes max disponibles sur ce filesystem…
Normal : en l’occurrence il s’agit d’un montage tmpfs or par défaut tmpfs fixe le nombre maximum d’inodes à la moitié du nombre de pages mémoires disponibles, ce qui peut être peu quand on a besoin de stocker plein de petits fichiers (typiquement des boites mails stockés dans des Maildir…).
Dans le cas de tmpfs, il suffit de préciser le nombre max d’inodes souhaités. Exemple :
mount -o remount,nr_inodes=4000000 /chemin
« Voilà ! »