Maison  >  Article  >  Tutoriel système  >  (étoile) Comment empêcher que des fichiers volumineux soient directement transférés ?

(étoile) Comment empêcher que des fichiers volumineux soient directement transférés ?

王林
王林avant
2024-02-03 09:40:031123parcourir

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 !

删除文件夹linux_linux删除文件夹_删除文件夹内容linux

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.

删除文件夹linux_linux删除文件夹_删除文件夹内容linux

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 :

linux删除文件夹_删除文件夹linux_删除文件夹内容linux

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

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer