Un jour, le service de la société s'est arrêté et lorsque j'ai enquêté sur la cause, l'erreur ci-dessus s'est produite et je n'ai pas pu créer un nouveau fichier. Ensuite, lorsque j'ai vérifié l'espace disque, il s'est avéré qu'il n'y avait pas de problème avec l'espace libre, mais l'inode était épuisé. Voici un mémorandum de traitement de ce problème.
Vérifiez l'espace libre de l'inode avec la commande df -i
/dev/xvda1 217227 217227 217227 100% /
Dès confirmation, le taux d'utilisation est de 100%. Avec cela, un nouveau fichier ne peut pas être créé et le service s'arrête lorsque le journal est écrit.
Vérifiez le système de fichiers avec la commande df -T
/dev/Abréviation xvda1 ext4
Cette fois, c'était ext4. Dans ext4, la taille de la table des inodes ne peut pas être modifiée dynamiquement (probablement), donc soit reconstruisez le système de fichiers, soit augmentez la taille du disque, et en même temps prenez la méthode de modification de la taille de la table des inodes. Étant donné que la taille du disque peut être facilement étendue dans EC2, la taille du disque sera étendue en tenant compte de l'avenir.
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 8G 0 disk
└─xvda1 202:1 0 8G 0 part /
Vérifiez la taille du volume. Ensuite, sur le tableau de bord EC2, cliquez sur l'ID EBS de l'instance en question pour accéder à la page du volume EBS.
Faites un instantané du volume cible et modifiez le volume.
Ici, spécifiez une valeur supérieure à la taille du volume confirmée précédemment et effectuez une demande de modification. Ce changement peut prendre jusqu'à 5 minutes.
Si vous pouvez le changer, ce sera comme suit.
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 20G 0 disk
└─xvda1 202:1 0 8G 0 part /
S'il ne change pas même après un certain temps, il sera modifié en redémarrant l'instance. Cependant, puisque la partition racine est toujours 8G et n'a pas été modifiée, étendez-la avec la commande suivante.
$ sudo growpart /dev/xvda 1
(mkdir: cannot create directory '/tmp/growpart.1959': No space left on device Si FAILED: failed to make temp dir
s'affiche, il n'y a pas d'espace et le fichier tmp ne peut pas être créé, nettoyez-le avant de l'exécuter.)
Revérifier
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 20G 0 disk
└─xvda1 202:1 0 20G 0 part /
Cela a élargi la taille au maximum.
Enfin, développez le système de fichiers
$ sudo resize2fs /dev/xvda1
$ df -i
/dev/xvda1 1310720 217227 1093493 17% /
L'utilisation des inodes a été réduite à 17%. C'est la fin.
$ dpkg --get-selections | grep linux-
linux-base install
linux-headers-4.4.0-121 install
linux-headers-4.4.0-121-generic install
linux-headers-4.4.0-124 install
linux-headers-4.4.0-124-generic install
linux-headers-4.4.0-127 install
linux-headers-4.4.0-127-generic install
linux-headers-4.4.0-128 install
linux-headers-4.4.0-128-generic install
linux-headers-4.4.0-130 install
linux-headers-4.4.0-130-generic install
linux-headers-4.4.0-133 install
linux-headers-4.4.0-133-generic install
linux-headers-4.4.0-134 install
linux-headers-4.4.0-134-generic install
linux-headers-4.4.0-137 install
linux-headers-4.4.0-137-generic install
linux-headers-4.4.0-138 install
linux-headers-4.4.0-138-generic install
linux-headers-4.4.0-139 install
linux-headers-4.4.0-139-generic install
linux-headers-4.4.0-151 install
linux-headers-4.4.0-151-generic install
linux-headers-4.4.0-154 install
linux-headers-4.4.0-154-generic install
linux-headers-4.4.0-157 install
linux-headers-4.4.0-157-generic install
linux-headers-4.4.0-159-generic install
linux-headers-generic install
linux-headers-virtual install
linux-image-4.4.0-101-generic deinstall
linux-image-4.4.0-104-generic deinstall
linux-image-4.4.0-108-generic deinstall
linux-image-4.4.0-109-generic deinstall
linux-image-4.4.0-112-generic deinstall
linux-image-4.4.0-116-generic deinstall
linux-image-4.4.0-141-generic deinstall
linux-image-4.4.0-142-generic deinstall
linux-image-4.4.0-143-generic deinstall
linux-image-4.4.0-151-generic install
linux-image-4.4.0-154-generic install
linux-image-4.4.0-157-generic install
linux-image-4.4.0-159-generic install
linux-image-4.4.0-92-generic deinstall
linux-image-4.4.0-93-generic deinstall
linux-image-4.4.0-96-generic deinstall
linux-image-4.4.0-97-generic deinstall
linux-image-4.4.0-98-generic deinstall
linux-image-virtual install
linux-libc-dev:amd64 install
linux-modules-4.4.0-143-generic deinstall
linux-modules-4.4.0-151-generic install
linux-modules-4.4.0-154-generic install
linux-modules-4.4.0-157-generic install
linux-modules-4.4.0-159-generic install
linux-virtual install
Quand je l'ai vérifié, il restait beaucoup d'anciens noyaux. Si vous nettoyez ceci, l'espace augmentera, donc s'il n'y a pas d'espace, vous devriez le vérifier. Supprimez le noyau que vous n'utiliserez certainement pas
Effectuez un test de suppression avec l'option suivante --dry-run
, et supprimez s'il n'y a pas de problème.
$ apt-get autoremove --purge linux-*-4.4.0-{121,124,127,128,130,133,134,137,138,139}* --dry-run
Ceci termine la procédure. Merci pour votre soutien!