Android

Cara mendapatkan ukuran direktori di linux

Membuat Partisi di Linux

Membuat Partisi di Linux

Daftar Isi:

Anonim

Ketika daftar isi direktori menggunakan perintah ls , Anda mungkin telah memperhatikan bahwa ukuran direktori hampir selalu 4096 byte (4 KB). Itu ukuran ruang pada disk yang digunakan untuk menyimpan meta-informasi untuk direktori, bukan apa yang dikandungnya.

Perintah yang ingin Anda gunakan untuk mendapatkan ukuran sebenarnya dari direktori adalah du , yang merupakan kependekan dari "penggunaan disk".

Mendapatkan Ukuran Direktori

Perintah du menampilkan jumlah ruang file yang digunakan oleh file atau direktori yang ditentukan. Jika jalur yang ditentukan adalah direktori, du merangkum penggunaan disk dari setiap subdirektori dalam direktori itu. Jika tidak ada jalur yang ditentukan, du melaporkan penggunaan disk dari direktori kerja saat ini.

Ketika dipanggil tanpa opsi apa pun, du menampilkan penggunaan disk dari direktori yang diberikan dan masing-masing subdirektori dalam byte.

Biasanya, Anda ingin menampilkan ruang yang ditempati oleh direktori dalam format yang dapat dibaca manusia. Misalnya, untuk mendapatkan ukuran total direktori /var , Anda akan menjalankan perintah berikut:

sudo du -sh /var

Outputnya akan terlihat seperti ini:

85G /var

Mari kita jelaskan perintah dan argumennya:

  • Perintah dimulai dengan sudo karena sebagian besar file dan direktori di dalam direktori /var dimiliki oleh pengguna root dan tidak dapat dibaca oleh pengguna biasa. Jika Anda menghilangkan sudo , perintah du akan mencetak "du: direktori tidak dapat dibaca". s - Hanya menampilkan ukuran total direktori yang ditentukan, jangan tampilkan total ukuran file untuk subdirektori. h - Ukuran cetak dalam format yang dapat dibaca manusia ( h ). /var - Jalur ke direktori yang Anda inginkan untuk mendapatkan ukuran.

Bagaimana jika Anda ingin menampilkan penggunaan disk dari subdirektori tingkat pertama? Anda memiliki dua opsi. Yang pertama adalah menggunakan simbol asterisk ( * ) seperti yang ditunjukkan di bawah ini, yang berarti “cocokkan semua yang tidak dimulai dengan tanda titik ( . )". Opsi -c memberitahu du untuk mencetak total semua ukuran:

sudo du -shc /var/*

24K /var/db 4.0K /var/empty 4.0K /var/games 77G /var/lib 4.0K /var/local 0 /var/lock 3.3G /var/log 0 /var/mail 4.0K /var/opt 0 /var/run 196K /var/spool 28K /var/tmp 85G total

Cara lain untuk mendapatkan laporan tentang penggunaan disk dari subdirektori tingkat pertama adalah dengan menggunakan opsi --max-depth :

sudo du -h --max-depth=1 /var

77G /var/lib 24K /var/db 4.0K /var/empty 4.0K /var/local 4.0K /var/opt 196K /var/spool 4.0K /var/games 3.3G /var/log 5.0G /var/cache 28K /var/tmp 85G /var 85G total

Secara default, perintah du menunjukkan ruang disk yang digunakan oleh direktori atau file. Untuk menemukan ukuran direktori yang jelas, gunakan opsi --apparent-size . “Ukuran nyata” suatu file adalah seberapa banyak data sebenarnya dalam file tersebut.

sudo du -sh --apparent-size /var

Ketika Anda mentransfer direktori melalui SCP, Rsync., Atau SFTP jumlah data yang ditransfer melalui jaringan adalah ukuran nyata dari file. Inilah sebabnya mengapa ukuran ruang pada disk yang digunakan pada sumber ketika ditampilkan dengan du (tanpa --apparent-size ) tidak sama dengan ukuran pada target.

Perintah du juga dapat dikombinasikan dengan perintah lain dengan pipa.

Sebagai contoh, untuk mencetak 5 direktori terbesar dalam direktori /var , Anda akan mem-pipe output dari du ke perintah sortir untuk mengurutkan direktori berdasarkan ukurannya dan kemudian mem-pipe output ke perintah head yang hanya akan mencetak 5 direktori teratas:

sudo du -h /var/ | sort -rh | head -5

85G /var/ 77G /var/lib 75G /var/lib/libvirt/images 75G /var/lib/libvirt 5.0G /var/cache/pacman/pkg

Kesimpulan

Di Linux, Anda bisa mendapatkan ukuran direktori menggunakan perintah du .

du terminal disk