du Ergebnisse auf Dateisystem inkonsistent mit df

7

Was erklärt die Diskrepanz in der Verwendung ( 82 GBvs 13 GB), die ich unten sehe?

  • Verwenden von df:

    $ df -h /
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/sda2              96G   82G  9.9G  90% /
    
  • Verwenden von du:

    $ sudo du -cshx /
    13G     /
    13G     total
    
Amelio Vazquez-Reina
quelle
2
Vielleicht haben Sie 69 Gigs Daten in einem Unterverzeichnis, das über eine Stelle gemountet wurde, wo dues nicht zu sehen ist?
Shadur
2
Möglicherweise aufgrund von Dateien, die gelöscht wurden, aber von einem bestimmten Prozess noch geöffnet bleiben. du solltest es versuchen lsof +L1.
user2233709
1
Wenn das Dateisystem btrfs ist, können die Dinge chaotisch werden.
StrongBad

Antworten:

6

-xOption ist ein falscher Freund, da sein Zweck darin besteht, Dinge zu überspringen. Diese Option gibt Ihnen nie das vollständige Bild.

Um eine vollständige Liste, verwenden Bind Mounts und dann du, ncdu, xdiskusage, baobaboder was auch immer Sie auf dem gebundenen Verzeichnis möchten , ohne Sprungmöglichkeiten:

mkdir /mnt/root
mount --bind / /mnt/root
ncdu /mnt/root

Dann stellen Sie möglicherweise fest, dass Sie viele Inhalte enthalten haben /mnt/backup(da diese beim Ausführen der Sicherungsaufgabe nicht bereitgestellt wurden ) oder eine riesige Datei /dev(das Ergebnis, dd if=/dev/zero of=/dev/sdxwenn keine /dev/sdxvorhanden waren und keine tmpfs bereitgestellt wurden /dev).

Es könnte sich auch um eine gelöschte Datei handeln, die noch von einem Prozess verwendet wird, aber die Leute fragen normalerweise nicht danach, da sie nach dem Neustart nicht mehr vorhanden ist. Es könnte auch eine Inkonsistenz des Dateisystems sein, aber auch diese wäre nach dem Neustart verschwunden (wenn dies erzwungen fsckwird).

Frostschutz
quelle
Vielen Dank! Neustart der Maschine hat es +1 getan. Interessant, dass du"verliert" den Überblick über den Weltraum, bis ich die Maschine neu startete
Amelio Vazquez-Reina
1
@ AmelioVazquez-Reina Der übliche Grund ist, dass eine große gelöschte Datei noch geöffnet ist. Der Dateiinhalt verschwindet erst, wenn der Prozess ihn schließt, dukann ihn jedoch nicht zählen, da er nur das Verzeichnis durchläuft.
Barmar