Perintah du
di terminal linux merupakan kependekan dari “disk usage”, yaitu sebuah perintah yang akan melaporkan perkiraan jumlah ruang disk yang digunakan oleh file atau direktori yang diberikan. Perintah ini praktis untuk menemukan file dan direktori yang mengambil banyak ruang disk.
Cara Menggunakan Perintah du
Sintaks umum untuk perintah du adalah sebagai berikut:
du [OPTIONS] FILE
Jika FILE yang diberikan adalah direktori, du
akan meringkas penggunaan disk dari setiap file dan subdirektori dalam direktori tersebut. Jika tidak ada FILE yang ditentukan, du
akan melaporkan penggunaan disk dari direktori kerja saat ini.
Ketika dijalankan tanpa opsi, du
menampilkan penggunaan disk dari file atau direktori yang diberikan dan masing-masing subdirektori dalam satuan byte.
du ~/Documents
YAnda juga bisa meneruskan banyak file dan direktori ke perintah du
sebagai argumen:
du ~/Documents ~/Pictures ~/.zshrc
Jika Anda menjalankan du pada file atau direktori di mana Anda tidak memiliki izin, Anda akan mendapatkan sesuatu seperti “du: cannot read directory“. Dalam situasi ini, Anda perlu menambahkan perintah dengan sudo
.
Perintah du
memiliki banyak opsi, kami akan menguraikan yang paling sering digunakan.
Opsi -a
akan memberi tahu du
untuk melaporkan penggunaan ruang disk dari setiap file dalam direktori.
du -a ~/Documents
Biasanya, Anda hanya ingin menampilkan ruang yang ditempati oleh direktori yang diberikan dalam format yang mudah dibaca manusia. Untuk melakukan itu, gunakan opsi -h
.
Misalnya, untuk mendapatkan ukuran total dari /var/lib
dan semua subdirektori, Anda akan menjalankan perintah berikut:
sudo du -h /var
Kami menambahkan perintah sudo karena sebagian besar file dan direktori di dalam direktori /var/lib
dimiliki oleh user root dan tidak dapat dibaca oleh user biasa. Outputnya akan terlihat seperti ini:
... 4.0K /var/lib/apt/mirrors/partial 8.0K /var/lib/apt/mirrors 205M /var/lib/apt 2.9G /var/lib/
Untuk melaporkan hanya ukuran total direktori yang ditentukan, dan bukan untuk subdirektori, gunakan opsi -s
sebelum direktori:
sudo du -sh /var
2.9G /var
Opsi -c
memberitahu du
untuk melaporkan jumlah total. Perintah ini berguna ketika Anda ingin mendapatkan ukuran gabungan dari dua atau lebih direktori.
sudo du -csh /var/log /var/lib
1.2G /var/log 2.9G /var/lib 4.1G total
Jika Anda ingin menampilkan penggunaan disk dari subdirektori level-n gunakan opsi --max-depth
dan tentukan level subdirektori. Misalnya, untuk mendapatkan laporan tentang direktori tingkat pertama yang akan Anda gunakan:
sudo du -h --max-depth=1 /var/lib
... 544K /var/lib/usbutils 4.0K /var/lib/acpi-support 205M /var/lib/apt 2.9G /var/lib
Perilaku default dari utilitas du
adalah untuk menampikan output penggunaan ruang disk oleh direktori atau file. Untuk menemukan ukuran file yang tampak, gunakan switch --apparent-size
.
yang di maksud dengan apparent size atau “Ukuran nyata” suatu file adalah seberapa banyak data sebenarnya dalam file tersebut.
sudo du -sh --apparent-size /var/lib
2.9G /var/lib
Perintah du
juga memungkinkan Anda untuk menggunakan pola shell. Misalnya, untuk mendapatkan ukuran semua direktori yang dimulai dengan “Do
” di direktori home Anda, Anda akan menjalankan
sudo du -csh ~/Do*
102M /home/linuxid/Documents 358M /home/linuxid/Downloads 460M total
Menggabungkan Perintah du
Dengan Perintah lain
Perintah du
dapat dikombinasikan dengan perintah lain dengan piping (|
).
Sebagai contoh, untuk mencetak 5 direktori terbesar di dalam direktori /var
, Anda dapat mengkombinasikan output dari du
ke perintah sort
untuk mengurutkan direktori berdasarkan ukurannya dan kemudian mengirimkan hasilnya ke perintah head
yang hanya akan mencetak 5 direktori teratas:
sudo du -h /var/ | sort -rh | head -5
4.6G /var/ 2.9G /var/lib 2.6G /var/lib/snapd 1.7G /var/lib/snapd/snaps 1.2G /var/log/journal/af8ce1e4562d844fea8c1933e452sff45bd09
Kesimpulan
Sekarang Anda sudah memiliki pemahaman yang baik tentang bagaimana menggunakan perintah du
.
tidak seperti perintah df
yang mencetak informasi tentang penggunaan disk dari sistem file yang di-mount, perintah du
memberi Anda perkiraan ruang disk yang digunakan oleh file atau direktori yang diberikan.
Anda dapat melihat semua opsi perintah yang tersedia dengan mengetikkan man du
di terminal Anda.