web-dev-qa-db-fra.com

Pas d'espace disponible sur le périphérique

Quand j'ai essayé de scp certains fichiers sur une machine centos, j'obtiens le message d'erreur "Il ne reste plus d'espace sur le périphérique"

J'ai essayé

[root@...]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol01 18G   18G     0 100% /

Et quand je le fais

du -sh / -> il ne donne que 5G

[... ~]$ df -i /
Filesystem            Inodes   IUsed   IFree IUse% Mounted on
/dev/mapper/VolGroup00-LogVol01
                     4685824  209516 4476308    5% /

semble que le système de fichiers est plein. Comment puis-je trouver lequel prend ces beaucoup de taille?

48
Futuregeek

Une telle différence entre la sortie de du -sh et df -h peut se produire si un fichier volumineux a été supprimé, mais est toujours ouvert par un processus. Vérifiez avec la commande lsof | grep deleted pour voir quels processus ont ouvert les descripteurs aux fichiers supprimés. Vous pouvez redémarrer le processus et l'espace sera libéré.

54
VolenD

Peut-être que vous êtes à court d'inodes. Essayez df -i

                     2591792  136322 2455470    6% /home
/dev/sdb1            1887488 1887488       0  100% /data

Disque utilisé 6% mais la table d'inodes est pleine.

43
BenJLI

Pour lister les processus contenant des fichiers supprimés d'un système Linux qui a nolsof, voici mon astuce:

    pushd /proc ; for i in [1-9]* ; do ls -l $i/fd | grep "(deleted)" && (echo -n "used by: " ; ps -p $i | grep -v PID ; echo ) ; done ; popd
9
Bence Frenyó

Vous pouvez exécuter les commandes suivantes

lsof/| grep supprimé

tuer les identifiants de processus, ce qui libère de l'espace disque.

1
user7855012