Que faire lorsque l'inode est épuisé sur EC2 Linux

Il semble qu'il n'y ait pas suffisamment d'espace sur votre système pour terminer!

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.

inode Vérifier l'espace libre

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érifier le système de fichiers

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.

Extension de la taille du volume

$ 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. スクリーンショット 2020-07-10 2.26.59.png

Faites un instantané du volume cible et modifiez le volume. スクリーンショット 2020-07-10 2.31.20.png

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.

Extension du système de fichiers

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.

prime

$ 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!

Recommended Posts

Que faire lorsque l'inode est épuisé sur EC2 Linux
Que faire si vous ne pouvez pas utiliser le WiFi sous Linux
Que faire si vous obtenez l'erreur ʻERR_FEATURE_UNAVAILABLE_ON_PLATFORM` lors de l'utilisation de ts-node-dev sous Linux
Que faire si l'environnement Pipenv est corrompu en mettant à jour Homebrew
Que faire si vous êtes bloqué pendant l'installation d'Anaconda sur Linux
Que faire si l'installation de SciPy échoue sur CentOS
Vérifiez si le câble LAN est déconnecté sous Linux
Que faire si pyenv n'est pas activé (zsh)
Que faire si le support japonais n'est pas complètement installé sur Ubuntu 16.04
Que faire si (base) est affiché au début du terminal Mac
Que faire si le Microsoft Store s'ouvre même si vous exécutez python sous Windows
Que faire si la barre de progression n'est pas affichée dans tqdm de python
Que faire si vous ne voyez pas IntelliSense de Python dans VS Code sous Windows
Procédures à suivre lorsque le japonais n'est pas affiché dans matplotlib
Que faire si la dépendance du package ne peut pas être réparée
[AWS EC2] Paramètres que vous souhaitez effectuer sur Amazon Linux 2
Que faire si `pip install matplot lib` échoue sur Mac
Que faire si Linux VLC ne peut plus tourner
Que faire si l'installation de pip mysqlclient échoue sur MacOS
Remède facile lorsque vous perdez votre paire de clés EC2
Que faire si yum casse
[* CentOS 6.10] Que faire si vous ne pouvez pas ajouter le référentiel IUS Community Project dans CentOS 6.5 (VirtualBox)
Que faire si l'image n'est pas affichée à l'aide de matplotlib etc. dans le conteneur Docker
Que faire lorsque Modem Manager sous Linux interfère avec l'écriture de keymaps sur votre propre clavier
Que faire si Python ne fonctionne pas sur Git pour Windows
Que faire si RHEL sur Azure doit étendre le système de fichiers?
Que faire si «Sans nom: 0» est ajouté dans to_csv-> read_csv des pandas
Que faire si PyAudio ne peut pas être installé sur Python 3.7, 3.8, 3.9 sous Windows
Que faire si vous ne pouvez pas utiliser la poubelle dans Lubuntu 18.04.
Que faire lorsque le type de valeur est ambigu en Python?
Que faire si vous chattez ou suivez un fichier binaire et que le terminal est brouillé
Que faire après l'installation de Linux (Ubuntu)
Que faire si le nom d'utilisateur est modifié et que le chemin de la bibliothèque pyenv ne passe pas
Que faire s'il y a un décimal dans python json .dumps
Que faire lorsque la commande yum ne parvient pas à définir les paramètres régionaux, par défaut C
Que faire si le mnist d'exemple Chainer (Windows) se termine par WinError 183.
Que faire si le serveur ne démarre pas avec python manage.py runserver
Que faire lorsque l'avertissement "L'environnement est cohérent ..." apparaît dans l'environnement Anaconda
Que faire si vous obtenez "La session n'a pas pu être ouverte" lors de l'installation de CentOS sur VirtualBox
Qu'est-ce que Linux
Qu'est-ce que Linux?
Qu'est-ce que Linux
Qu'est-ce que Linux
Que faire si vous recevez le message "" ~ .pkg "est corrompu et ne peut pas être ouvert" lors de l'installation de wxPython sur Mac OS X
Que faire lorsque le shell pipenv devient impossible
Que faire si mod_fcgid ne peut pas résoudre UnicodeEncodeError
Que faire si les rails ne fonctionnent pas
Que faire si pip ne peut pas être installé
C'est un Mac. Qu'est-ce que la commande Linux Linux?
Que faire si l'autocomplete-python d'atome ne fonctionne pas
(Linux débutant) Quel est le mot magique aux?
Que faire si Docker-sync cesse soudainement de fonctionner
Quelle est la différence entre Unix et Linux?
Let's Encrypt mis à jour! Que faire si la commande certbot renouveler ne fonctionne pas
[Note] Que faire si la bibliothèque Qt entre en conflit entre pyqt et opencv