Я читав на стільки веб-сайтах, що в Linux символічні посилання (м'які посилання, посилання) є подібно до покажчиків, які посилаються на інший файл, який може бути розміщений де завгодно (наприклад, ярлики Windows). Однак, коли я перевіряю використання диска папки, в якій є символічні посилання, виникає невідповідність між тим, що говорить мій файловий менеджер, і тим, що du
звітує. Однак якщо я набираю du -L
( -L, --dereference; dereference all symbolic links
зі сторінки man), вихід du -L
і розмір, про який повідомляє мій менеджер файлів, однакові .
Моє запитання : якщо у мене є м'яке посилання на великий файл, наприклад, в моєму окремомуhome
розділі, чи виникнуть у мене проблеми?
Приклад :
Моя /var/tmp
папка зараз просто порожня. Створимо файл:
$ cat /some/file.txt > file.txt
$ du -ac
164 ./file.txt
168 .
168 total
І мій менеджер файлів (Thunar, в даному випадку) звітує
Розмір: 1 предмет, загальною сумою 163,0 кБ
Гаразд. Тепер давайте створимо дійсно великий файл у /tmp
та символьне посилання на нього:
$ 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
На сьогодні все добре. Але якщо я відкрию свій файловий менеджер:
Розмір: 2 предмети, загальною вагою 570,3 кБ
І, нарешті:
$ du -acL
164 ./file.txt
408 ./heavy.txt
576 .
576 total
Якщо розділ, в якому /var/tmp
знаходиться, розміром 1 Гб, і я створюю в ньому посилання на файл 1 Гб, ¿чи загине мій жорсткий диск? Я знаю, що du
вийде 168 та Thunar 1 GiB, але я не знаю, що правильно.