Ich habe in so vielen Websites gelesen, dass symbolische Links (Softlinks, Symlinks) in Linux genauso sind wie Zeiger , die auf eine andere Datei verweisen, die sich möglicherweise irgendwo befindet (wie Windows-Verknüpfungen). Wenn ich jedoch die Datenträgerverwendung eines Ordners überprüfe, in dem symbolische Verknüpfungen vorhanden sind, stimmen die du
Angaben meines Dateimanagers und die Berichte nicht überein. Wenn ich jedoch du -L
( -L, --dereference; dereference all symbolic links
von der Manpage) eingebe, sind die Ausgabe von du -L
und die Größe, die mein Dateimanager meldet, gleich .
Meine Frage ist : Wenn ich einen Softlink zu einer großen Datei in meiner separatenhome
Partition habe, habe ich dann Probleme?
Beispiel :
Mein /var/tmp
Ordner ist jetzt leer. Lassen Sie uns eine Datei erstellen:
$ cat /some/file.txt > file.txt
$ du -ac
164 ./file.txt
168 .
168 total
Und mein Dateimanager (in diesem Fall Thunar) berichtet
Größe: 1 Stück, insgesamt 163,0 kB
Gut. Jetzt erstellen wir eine wirklich große Datei /tmp
und einen Symlink dazu:
$ cat /dir/really_big.txt > /tmp/heavy.txt
$ du -a | grep heavy.txt
408 ./heavy.txt
$ ln -s /tmp/heavy.txt heavy.txt
$ du -ac
164 ./file.txt
0 ./heavy.txt
168 .
168 total
Alles ist in Ordnung für jetzt. Aber wenn ich meinen Dateimanager öffne:
Größe: 2 Elemente, insgesamt 570,3 kB
Und schlussendlich:
$ du -acL
164 ./file.txt
408 ./heavy.txt
576 .
576 total
Wenn die Partition, in der /var/tmp
sich die Partition befindet, 1 GB groß ist und ich darin einen Link zu einer 1 GB-Datei erstelle, wird meine Festplatte sterben? Ich weiß, dass du
168 und Thunar 1 GiB ausgegeben werden, aber ich weiß nicht, welches richtig ist.