Wie kann dieses Verzeichnis so viel Speicherplatz beanspruchen?

Wie kann dieses Verzeichnis so viel Speicherplatz beanspruchen?

Unix ist nicht meine Muttersprache und ihr Konzept von Dateisystemen verwirrt mich.

Wenn ich meinen freien Speicherplatz anschaue, sehe ich:

/$ df -kh
Filesystem            Size  Used Avail Use% Mounted on
/dev/xvda1            7.9G  7.1G  397M  95% /
none                  3.7G  120K  3.7G   1% /dev
none                  3.7G  4.0K  3.7G   1% /dev/shm
none                  3.7G   48K  3.7G   1% /var/run
none                  3.7G     0  3.7G   0% /var/lock
/dev/xvdf             100G   19G   82G  19% /db
/dev/xvdg             100G   15G   86G  15% /images
/dev/xvdb             414G  199M  393G   1% /mnt

Für mich bedeutet das, dass alle Dateien und Verzeichnisse unter /db auf dem Dateisystem xvdf liegen, alles unter /images auf xvdg und alles unter /mnt auf xvdb. Alles andere liegt auf xvda1.

Allerdings hat xvda1 nur 7,9 G Speicherplatz. Warum also

/$ sudo du -sh var
25G     var

zeigen Sie mir, dass /var 25 GB einnimmt? Zuerst dachte ich, dass vielleicht der Inhalt an den Zielen symbolischer Links gezählt wird, aber ich weiß, dass es ein paar Verzeichnisse weiter unten einen symbolischen Link zum Verzeichnis /images gibt und dieser 86 GB Inhalt hat, also sollte var >86 GB sein, wenn symbolischen Links gefolgt wird.

Wie kann /var 25 GB auf einem Laufwerk belegen, das nur über 7,9 GB verfügt?

Übrigens, falls das von Bedeutung ist, handelt es sich hierbei um eine Ubuntu-Instanz, die in Amazons EC2 ausgeführt wird.

Antwort1

Dadurch erhalten Sie die richtige Antwort auf Ihr Problem.

du -ch --max-depth=1 -x /var

-xzeigt nur die Datennutzung eines Dateisystems an und überspringt daher den Inhalt anderer Dateisysteme aus dem /var-Verzeichnis

--max-depth=1gibt nur die Datennutzung der ersten Ebene an, z. B. /var/a /var/b usw.

Antwort2

Aus der Ausgabe von df,

/dev/xvdg 100 G 15 G 86 G 15 % /Bilder

In den /images wurden nur 15G verwendet.

Antwort3

Stellen Sie sicher, dass es varsich nicht um einen symbolischen Link zu einem anderen Dateisystem handelt.

 /$ ls -ld var
 drwxr-xr-x 14 root root 4096 Jun 22 02:13 var

Antwort4

Es ist auch möglich, dass Sie es ausführen müssen, fsckum die Diskrepanz zu beheben.

Ich erwähne es nur der Vollständigkeit halber, aber ich vermute immer noch, dass etwas anderes wahrscheinlicher ist. Wenn Sie nach einer Weile immer noch nichts gefunden haben, sollten Sie dies versuchen.

verwandte Informationen