Après avoir supprimé un gros fichier, combien de temps faut-il à «df» pour récupérer la modification?

12

J'ai supprimé un fichier journal de 2,3 Go sur mon serveur Ubuntu et dfne semble pas prendre la relève. Existe-t-il généralement un délai avant de dfpouvoir détecter qu'un fichier volumineux a été supprimé?

dan
la source

Réponses:

20

Il semble que le fichier soit toujours ouvert par un processus. Vous devrez redémarrer ce service pour libérer de l'espace disque.

chariot renversé
la source
1
Cela est particulièrement vrai pour les fichiers journaux. De nombreux programmes ouvrent leur fichier journal lorsqu'ils démarrent et ne les ferment pas avant la fin.
mattdm
1
Et vous pouvez savoir s'il est toujours utilisé et par qui utiliser lsof
Joris
Grande question et bonne réponse. Je me pose la question depuis un certain temps maintenant. En outre, vous pourrez peut-être le faire fermer son descripteur de fichier en lui envoyant un SIGHUP. Par exemple, si le processus 12345 a un fichier «supprimé» ouvert, sudo kill -HUP 12345vous pouvez obtenir ce processus pour le fermer. (Cela dépend, bien sûr, de la façon dont ce processus gère un signal SIGHUP. Mais de nombreux fichiers orientés démons fermeront et rouvriront les descripteurs de fichiers lorsqu'ils recevront un SIGHUP.)
Mark E. Haase
Je pensais que nous ne pouvions pas supprimer les fichiers ouverts!
Ashish Karpe
1
@AshishKarpe Non, vous pouvez supprimer un fichier ouvert, mais le processus avec celui-ci ouvert gardera le contenu du fichier sur le disque. Le fichier est désormais invisible pour les autres processus, car il n'est référencé par aucun nom de fichier existant, mais le processus qui l'a ouvert peut toujours le lire et l'écrire. Une fois que ce processus ferme le fichier, le contenu sera supprimé, récupérant l'espace disque.
Jonathan Hartley
2

Si le système de fichiers manquait d'espace, vous pourriez être en cours d'exécution dans l'espace réservé sur le système de fichiers. Les systèmes de fichiers ext2 / 3/4 ont un espace réservé réservé à la racine. Par défaut, c'est 5%. Donc, s'il était plein et que 2,3 Go représentent moins de 5% de l'espace sur le lecteur, le système de fichiers semblera toujours plein.

Dans cette situation, vous avez deux choix. Pour continuer à libérer de l'espace au point que vous disposez d'espace libre utilisable ou modifiez la quantité d'espace réservé par le système de fichiers. Pour modifier la quantité d'espace réservé, utilisez le tune2fs -m 0 /dev/sda1remplacement du 0 par le pourcentage d'espace réservé que vous souhaitez avoir et / dev / sda1 avec le périphérique approprié.

Voir la réponse acceptée à cette question pour plus de détails.

3dinfluence
la source
0

Pas longtemps. Il y a de fortes chances que le fichier soit simplement encore utilisé. Il n'y aura pas de libération d'espace disque tant que vous n'aurez pas mis fin aux processus correspondants.

poige
la source
0

Vérifiez également votre répertoire .trash.

JakeRobinson
la source
où est ce répertoire .trash?
Ashish Karpe
Sur Ubuntu 14.04, je vois que j'en ai un ~/.local/share/Trash, qui est plein de déchets que j'ai supprimés dans Nautilus.
Jonathan Hartley