Apache
a créé des milliers de sémaphores en mémoire puis a planté. Ces sémaphores sont des descripteurs de ressources écrites dans un système de fichiers virtuel (/dev/shm
pour shared memory), autrement dit un ramdisk.
En plantant, les processus httpd
n’ont pas pu nettoyer leurs sémaphores, laissant le ramdisk saturé. C’est pourquoi au redémarrage, httpd
ne peut créer sa ressource et conclut à un « no space left
« .
On voit les sémaphores avec la commande suivante :
ipcs -s | grep www-data
Il y a une astuce avec awk
ou perl
pour les effacer, ensuite un apachectl start
et ça repart.