Suivez le "Wonderful World of Linux" sur le compte public
Définir comme "star" linux supprimer le dossier Gagner l'enchère pour Linux, je vous emmènerai jouer avec Linux tous les soirs !
Lors de l'exploitation et de la maintenance quotidiennes, nous devons souvent résoudre le problème de l'espace disque c et supprimer des dossiers sous Linux. Lors de la réception d'une alarme, nous rechercherons ces fichiers volumineux dès que possible, par exemple Centos, le plus volumineux. le fichier peut être /var/log/messages .
Mais parfois, les fichiers volumineux ne peuvent pas être trouvés quoi qu'il arrive. Lors d'une recherche dans du, la taille calculée ne correspond pas à l'espace occupé affiché par df.
Si vous vérifiez que l'inode n'est pas plein via df-i, il est très probable qu'un gros fichier ait été directement rm'd, et qu'un processus ait toujours ouvert le fichier.
Dans ces cas, comme le processus ne se termine pas, l'espace occupé par le fichier ne sera pas libéré ; l'espace du lecteur c ne peut pas être véritablement libéré jusqu'à la fin du processus.
Comment savoir quel processus a ouvert le fichier
Sous Linux, comme le processus est toujours en vie, vous pouvez visualiser le fd ouvert par tous les processus. Si le fichier a été supprimé, il sera affiché (supprimé) lors de la visualisation.
Les exemples sont les suivants :
<span></span><code style="padding: 16px;color: #ddd;font-family: Operator Mono, Consolas, Monaco, Menlo, monospace;font-size: 12px;padding-top: 15px;background: #272822;border-radius: 5px">$ sudo find /proc/*/fd -ls | grep <span style="color: #a6e22e;line-height: 26px">'(deleted)'</span><br> 388609 0 lrwx------ 1 zerotier-one zerotier-one 64 Aug 21 00:19 /proc/29400/fd/4 -> /tmp/ibpX85Vd (deleted)<br> 388610 0 lrwx------ 1 zerotier-one zerotier-one 64 Aug 21 00:19 /proc/29400/fd/5 -> /tmp/ibCwAgAj (deleted)<br> 388611 0 lrwx------ 1 zerotier-one zerotier-one 64 Aug 21 00:19 /proc/29400/fd/6 -> /tmp/ibRZ5rep (deleted)<br> 388612 0 lrwx------ 1 zerotier-one zerotier-one 64 Aug 21 00:19 /proc/29400/fd/7 -> /tmp/ibBuNEzA (deleted)<br> 388616 0 lrwx------ 1 zerotier-one zerotier-one 64 Aug 21 00:19 /proc/29400/fd/11 -> /tmp/ibG68kpG (deleted)<br></code>
Comment éviter ces situations
Ne supprimez pas le fichier directement supprimez le dossier sous Linux, mais tronquez le fichier pour libérer de l'espace sur le lecteur C.
Une façon est :
<span></span><code style="padding: 16px;color: #ddd;font-family: Operator Mono, Consolas, Monaco, Menlo, monospace;font-size: 12px;padding-top: 15px;background: #272822;border-radius: 5px">cat /dev/null > <span style="color: #a6e22e;line-height: 26px">${filename}</span><br></code>
ou (nouveauté !)
<span></span><code style="padding: 16px;color: #ddd;font-family: Operator Mono, Consolas, Monaco, Menlo, monospace;font-size: 12px;padding-top: 15px;background: #272822;border-radius: 5px">: > <span style="color: #a6e22e;line-height: 26px">${filename}</span><br></code>
De cette façon, vous pouvez rapidement libérer de l'espace.
Documentation de référence
Recherchez et supprimez les fichiers volumineux ouverts mais supprimés
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!