Erreur : Plus d'espace disponible sur le peripherique lors du demarrage/arret des services uniquement
Apprenez a corriger l'erreur "No space left on device" lors du demarrage et/ou de l'arret des services uniquement sur Amazon Linux 2

J'utilise Amazon SSM Agent pour me connecter a l'instance EC2 de maniere securisee. Amazon SSM Agent peut egalement se connecter a la console de l'instance EC2 via la console web aws.amazon.com. C'est donc ma methode preferee.
Il y a quelques jours, lorsque j'ai essaye de me connecter a EC2 via Amazon SSM Agent, il ne repondait pas et apres cela, j'ai decide de me connecter de maniere classique, oui avec SSH.
Bien sur, tout d'abord, je veux redemarrer Amazon SSM Agent et je vois ceci :
[root@i-0cd9514c60d532e78 ~] systemctl restart amazon-ssm-agent.service
Error: No space left on deviceJe ne m'attendais pas a ce message d'erreur concernant l'etat du disque. Et je veux verifier l'utilisation du disque. Maintenant, je vois ceci :
[root@i-0cd9514c60d532e78 ~] df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 960M 0 960M 0% /dev
tmpfs 978M 0 978M 0% /dev/shm
tmpfs 978M 420K 978M 1% /run
tmpfs 978M 0 978M 0% /sys/fs/cgroup
/dev/nvme0n1p1 8.0G 2.6G 5.5G 32% /
tmpfs 196M 0 196M 0% /run/user/1000Oups ! On dirait que ce message d'erreur ne concerne pas l'utilisation du disque mais je dois m'en assurer. Maintenant, il est temps de verifier les inodes.
[root@i-0cd9514c60d532e78 ~] df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
devtmpfs 245750 304 245446 1% /dev
tmpfs 250254 2 250252 1% /dev/shm
tmpfs 250254 388 249866 1% /run
tmpfs 250254 16 250238 1% /sys/fs/cgroup
/dev/nvme0n1p1 4193216 67672 4125544 2% /
tmpfs 250254 1 250253 1% /run/user/1000Maintenant que j'ai pu confirmer que ce n'etait pas non plus les inodes, j'ai fait des recherches plus approfondies et j'ai trouve qu'il existe des rapports de bugs connus pour ce meme probleme ou l'action systemctl de "start", "stop" et "reload" affiche une erreur "No space left on device", mais les actions "enable", "disable" et "kill" ne le font pas. Dans les bugs, il est rapporte que cette erreur se produit en raison de la limite inotify "max_user_watches". inotify a une limite sur le nombre de fichiers et de repertoires qu'il peut surveiller pour les changements. Pour faire disparaitre l'erreur, vous devez augmenter la valeur de "/proc/sys/fs/inotify/max_user_watches" pour permettre a plus de fichiers et de repertoires d'etre ajoutes et surveilles pour les changements.
Pour changer la valeur en temps reel, vous pouvez lancer :
echo 1048576 > /proc/sys/fs/inotify/max_user_watchesPour charger cette meme valeur augmentee de maniere persistante apres un redemarrage ou une action stop/start :
Ajoutez la ligne "fs.inotify.max_user_watches=1048576" dans /etc/sysctl.conf. Vous pouvez verifier votre configuration sysctl avec la commande sysctl -p.
References :
https://bugzilla.redhat.com/show_bug.cgi?id=894483
https://bugzilla.redhat.com/show_bug.cgi?id=1452933
Conclusion
Plus d'Ercan
Deux autres sites, même auteur, terrain différent.
IA, LLMs, agents, ML appliquée.
Notes de terrain sur les charges IA. Analyse des coûts Bedrock, patterns d'agents, compromis de stockage vectoriel, modes de défaillance en production.
Visiter ercan.ai →Le hub. À propos, conseil, contact.
Hub personnel pour les deux pistes d'écriture. Qui je suis, comment fonctionne le conseil, comment me joindre.
Visiter ercanermis.com →