Почему ls и du показывают разные размеры?

22

Я загружаю файл с помощью rtorrent,

Когда я проверяю папку, в которой находится файл, размер файла с lsкомандой составляет 4,4 ГБ, но когда я проверяю диск с duкомандой, он показывает мне 219 МБ , также та же проблема с dfкомандой, которая, кажется, просто вычисляет 219 МБ.


Вот мой результат консоли

root@SERVER:/home/.root/TMP/tnt/d1/xxx# dir -alh

total 219M
drwxr-xr-x  2 root root 4.0K 2010-01-10 15:30 .
drwxr-xr-x 15 root root 4.0K 2010-01-10 15:30 ..
-rw-r--r--  1 root root 4.4G 2010-01-11 10:55 yyy.mkv

root@SERVER:/home/.root/TMP/tnt/d1/xxx# du -h

219M    .

root@SERVER:/home/.root/TMP/tnt/d1/xxx# 
user24263
источник
Я столкнулся с этой же проблемой сегодня после увеличения образа диска с помощью qemu-img resize.
Пит

Ответы:

37

Это редкий файл . lsсообщает о выделенном размере; duсообщает о фактически использованном пространстве.

По мере того, как ваш торрент-клиент будет загружать больше, он будет заполнять пробелы, и duразмер -reported будет увеличиваться в соответствии с тем, что lsсообщает.

Для принудительного включения duи dfвключения пробелов из man duвторого перечисленного варианта --apparent-size:

du -s -B1 --apparent-size
Джеймс Полли
источник