Linux'ta 'du' komutunun çıktısıyla karıştırıldım


21

File.o adlı bir dosya oluşturdum, file.o dosyasının boyutunu kontrol etmek istiyorum.

du -h file.o ====> 4.0K

du -b file.o ====> 1120

göre du -b file.o, file.o'nun 1120 bayt büyüklüğünü tanıyorum. Ama neden du -h file.o4.0K çıktı (4 * 1024 bayt anlamına gelir)?

Yanıtlar:


33

Dosya daha küçüktür, ancak diskte bir tam 4.0K'lık bir blok alır (bir blokta sadece bir dosyaya sahip olabilirsiniz). Bayt boyutu (örneğin) 5678 Bayt olsaydı, iki 4.0K bloğu, yani 8.0K'yı işgal ederdi.

du -b Varsayılan blok boyutunu geçersiz kılarak boyutları bayt olarak yazdırır.


10

Eumiro'nun cevabını eklemek için, blok boyutu her dosya sistemi / bölümü için farklı olabilir.

Bir dosya sisteminin blok boyutunu tune2fs -l /dev/<disk> | grep '^Block size'veya kullanarak bulabilirsiniz stat -c "%o" <file on the disk>.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.