Dalam keadaan apa akan ls -lh
menunjukkan total yang kurang dari jumlah file individu? Sebagai contoh:
$ ls -lh /var/lib/nova/instances/_base
total 100G
-rw-rw-r-- 1 nova nova 4.3M 2012-02-14 14:07 00000001
-rw-rw-r-- 1 nova nova 5.7M 2012-02-14 14:07 00000002
-rw-rw-r-- 1 nova nova 42G 2012-03-08 15:24 1574bddb75c78a6fd2251d61e2993b5146201319.part
-rw-rw-r-- 1 libvirt-qemu kvm 24M 2012-02-14 14:07 77de68daecd823babbb58edb1c8e14d7106e83bb_sm
-rw-r--r-- 1 libvirt-qemu kvm 65G 2012-03-02 12:43 bd307a3ec329e10a2cff8fb87480823da114f8f4
-rw-rw-r-- 1 libvirt-qemu kvm 160G 2012-02-24 16:06 ephemeral_0_160_None
-rw-rw-r-- 1 libvirt-qemu kvm 80G 2012-02-24 22:38 ephemeral_0_80_None
-rw-r--r-- 1 libvirt-qemu kvm 10G 2012-02-24 22:37 fe5dbbcea5ce7e2988b8c69bcfdfde8904aabc1f
-rw-r--r-- 1 libvirt-qemu kvm 10G 2012-02-24 11:09 fe5dbbcea5ce7e2988b8c69bcfdfde8904aabc1f_sm
Sunting: sekarang menunjukkan beberapa bendera tambahan sesuai permintaan dalam komentar:
$ ls -aiFlh /var/lib/nova/instances/_base/
total 143G
29884440 drwxrwxr-x 2 nova nova 4.0K 2012-03-08 15:45 ./
29884427 drwxr-xr-x 6 nova nova 4.0K 2012-03-08 15:05 ../
29884444 -rw-rw-r-- 1 nova nova 4.3M 2012-02-14 14:07 00000001
29884445 -rw-rw-r-- 1 nova nova 5.7M 2012-02-14 14:07 00000002
29884468 -rw-r--r-- 1 nova nova 65G 2012-03-08 15:59 1574bddb75c78a6fd2251d61e2993b5146201319.converted
29884466 -rw-rw-r-- 1 nova nova 58G 2012-03-08 15:35 1574bddb75c78a6fd2251d61e2993b5146201319.part
29884446 -rw-rw-r-- 1 libvirt-qemu kvm 24M 2012-02-14 14:07 77de68daecd823babbb58edb1c8e14d7106e83bb_sm
29884467 -rw-r--r-- 1 libvirt-qemu kvm 65G 2012-03-02 12:43 bd307a3ec329e10a2cff8fb87480823da114f8f4
29884443 -rw-rw-r-- 1 libvirt-qemu kvm 160G 2012-02-24 16:06 ephemeral_0_160_None
29884442 -rw-rw-r-- 1 libvirt-qemu kvm 80G 2012-02-24 22:38 ephemeral_0_80_None
29884447 -rw-r--r-- 1 libvirt-qemu kvm 10G 2012-02-24 22:37 fe5dbbcea5ce7e2988b8c69bcfdfde8904aabc1f
29884441 -rw-r--r-- 1 libvirt-qemu kvm 10G 2012-02-24 11:09 fe5dbbcea5ce7e2988b8c69bcfdfde8904aabc1f_sm
files
ls
disk-usage
Lorin Hochstein
sumber
sumber
ls -aiFl
hdu -h --total
dengan dir yang sama?Jawaban:
Ini akan terjadi jika Anda memiliki file jarang:
File jarang adalah file yang belum diisi dengan blok sistem file (atau hanya sebagian). Ketika Anda membaca zona tidak terpopulasi dari file jarang, Anda akan mendapatkan nol. Zona kosong semacam itu tidak memerlukan ruang disk aktual, dan 'total' yang dilaporkan
ls
sesuai dengan ruang disk yang ditempati oleh file (sama sepertidu
).sumber
-s
/--size
option "Cetak alokasi disk setiap file ke kiri dari nama file. Ini adalah jumlah ruang disk yang digunakan oleh file, yang biasanya sedikit lebih dari ukuran file, tetapi bisa kurang jika file memiliki lubang . " The-l
pilihan saja mencetak ukuran, juga.Harap dicatat bahwa output yang diberikan oleh
ls -l
dandu
memiliki perbedaan yang halus tetapi sangat penting. Coba ini:Sekarang
Sedangkan
Ini karena filesystem mengalokasikan ukuran dalam potongan 4.096 (pada kotak linux saya). Ini disebut IO Block. Anda dapat melihatnya dengan:
sumber
stat
pada usulan sayaempty-file
, dan Anda akan melihat bahwa jumlah Blok adalah 0, bahkan jika file tersebut dilaporkan memiliki ukuran 1G.stat
melaporkan jumlah yang setara dari blok ukuran lama yang diperlukan untuk menyimpan semua blok 4K (yaitu 8 kali jumlah sebenarnya dari blok 4K).Jawaban yang diterima benar-benar benar, hanya jika Anda ingin melihat ukuran yang jelas, Anda dapat menggunakan:
du --apparent-size
sumber