Почему du показывает, что файл на 83 ГБ использует нулевое пространство?

В home/{user}У меня есть файл с именем ntfs.txt чей общий размер файлов составляет 83,3 ГБ, а размер на диске 0B. Его собственность и группа оба root, В последний раз к нему обращались 24/07/2012.ls -l /home/romain/ntfs.txt выходы -rw------- 1 root root 83346727424 janv. 15 2012 /home/{user}/ntfs.txt а также du /home/romain/ntfs.txt дает 0 /home/{user}/ntfs.txt, Ранее у меня была установка Wubi, которую я позже переместил в отдельный раздел. Я также только что избавился от Windows, но файл все еще здесь. Что с его странным размером? Могу ли я удалить это?

1 ответ

Решение

Это, вероятно, редкий файл

Самый распространенный случай, когда du а также ls возвращают совершенно разные размеры для разреженных файлов, которые часто создаются ускорителями загрузки или клиентами bittorrent. ls дает размер, выделенный (который приложение будет постепенно заполнять), в то время как du дает вам фактический размер, используемый.

Если фактический размер равен 0, то в нем действительно нет данных, и его можно безопасно переместить или удалить (не то, чтобы это сэкономило вам место на диске, поскольку оно не используется).

Поэкспериментируйте с редкими файлами:

Вы можете легко скопировать этот странный сценарий с помощью файла объемом 1 гигабайт, который занимает нулевое пространство:

$ dd if = / dev / zero of = SparseFile bs = 1 seek = 1G count = 0
$ ls -l SparseFile
-rw-rw-r-- 1 izx izx 1073741824 24 июля 03:53 SparseFile
$ du SparseFile
0 SparseFile
$ stat SparseFile
  Файл: `SparseFile'
  Размер: 1073741824 Блоки: 0 Блок ввода-вывода: 4096 обычный файл
Прибор: 805h/2053d Индекс: 400321 Ссылки: 1
Доступ: (0664/-rw-rw-r--)  Uid: ( 1000/     izx)   Gid: ( 1000/     izx)

Другие вопросы по тегам