Linux sistemlerde disk, partisyon veya klasör boyutlarını görüntülemek için birçok araç mevcuttur. Genel disk kullanımını görmek için df
komutu, klasör boyutlarını detaylı incelemek için ise du
komutu kullanılır. Zaten du
, “disk usage” ifadesinin kısaltmasıdır. Bu yerleşik komutlara ek olarak, görsel olarak daha kullanıcı dostu bir deneyim sunan üçüncü parti bir araç olan ncdu
da tercih edilebilir.

NCDU Nedir?
NCDU linux için yazılmış, derli toplu bir disk kullanımı görüntüleme aracıdır. Nix sistemlerde, aşağıdaki ekranlara ncurses ismi verilir.
*Freebsd üzerinde mysql-serverin kurulumu için make config ncurses’i görmektesiniz.
Bsd işletim sistemlerinden aşina olduğumuz ncurses ekranı, tüm Nix sistemlere özgü bir ekrandır. NCDU’da ncurses disk usage anlamına gelip, disk kullanım durumunu ncurses ekranı şeklinde verir. Neredeyse tüm Linux ve Unix distrolarında çalışmaktadır.
NCDU Kurulumu
NCDU, C dili yazıldığından, yukarıda belirttiğimiz gibi, neredeyse tüm Linux ve Unix dağıtımlarında çalışmaktadır.
Centos üzerine NCDU kurulumu
Centos üzerinde varsayılan paketlere NCDU bulunuyor. Direkt yum paket derleyici ile kurulabilir;
yum install ncdu
Ubuntu üzerine NCDU kurulumu
Apt kullanan tüm dağıtımlarımda (Debian vb.) kolaylıkla kurulabilir.
sudo apt-get install ncdu
Freebsd üzerine NCDU kurulumu
Freebsd üzerinde ports ağacında NCDU paketleri bulunuyor.
cd /usr/ports/sysutils/ncdu/
make install clean
NCDU Kullanımı
NCDU, kurulumu gibi kullanımı da oldukça basit bir araç. Direkt olarak bulunduğunuz dizinde ncdu yazmanız yeterli olacaktır. Yani /var/log dizininin kullanımı öğrenmek istiyorsak;
ncdu /var/log/

Okuduğunuz dizinin alt dizini varsa /dizin_ismi şeklinde gösterilir. Üzerine gelip, enter’a bastığınızda o dizinin de kullanım durumunu görüntüleyebilirsiniz.
Ayrıca, dosyanın “i” tuşu ile dizinin veya dosyanın ayrıntılı görüntüleyebilirsiniz.

Ayrıca mevcut hesaplamayı aynı ekranda tekrar başlatmak isterseniz “r” tuşuna basmanız yeterli olacaktır. Kısaca “r” tuşu reload yapacaktır.
NCDU’dan çıkmak için quit anlamına gelen “q” tuşu ile çıkabildiğiniz gibi ctrl+c ile de direkt çıkabilirsiniz.
NCDU ile uzak sunucunun disk kullanımını görüntülemek
NCDU’nun daha güzel bir yeteneği ise, uzak sunuculardan da veri okuyabilmesi. Bu işlemi yapmak için ise;
ssh -C root@uzak_sunucu ncdu -o- / | ncdu -f-
yazmanız yeterli olacaktır. Uzaktaki sunucunun root dizinini (istersen / yerine farklı bir dizin de belirtebilirsiniz) size getirecektir.
NCDU diğer parametre ve kullanımları
NCDU’nun diğer parametreleri de aşağıdaki şekildedir.
- n – Ada göre sıralar (artan / azalan).
- s – Boyuta göre sıralar (artan / azalan).
- C – Öğelere göre sıralar (artan / azalan).
- d – Seçilen dosya veya dizini siler
- t – Sıralama sırasında dosyalardan önce dizinleri değiştirir.
- g – Yüzde ve / veya grafiği göster.
- a – Görünür boyut ve disk kullanımı arasında geçiş yapar.
- c – Alt öğe sayısının gösterimini değiştir.
- e – Gizli veya hariç tutulan dosyaları gösterir veya gizler.
Sık Sorulan Sorular
ncdu not found hatası nasıl çözülür?
Bu hata sistemde NCDU kurulu olmadığında çıkar. Ubuntu/Debian için sudo apt install ncdu
, CentOS için yum install ncdu
komutunu çalıştırarak kurulumu tamamlayabilirsiniz.
ncdu ile en büyük klasörü nasıl bulurum?
ncdu /
komutuyla diskin tamamını tarayın. Açılan ekranda s
tuşuna bastığınızda klasör ve dosyalar boyuta göre sıralanır, en büyük klasörü kolayca görebilirsiniz.
ncdu ile dosya silebilir miyim?
İncelediğiniz dizinde dosya veya klasör üzerine gelip d
tuşuna bastığınızda ilgili öğe sistemden silinir. Bu işlem geri alınamayacağı için dikkatli kullanın.
ncdu uzak sunucuda nasıl çalıştırılır?
SSH üzerinden NCDU’yu şu komutla kullanabilirsiniz: ssh -C root@sunucu ncdu -o- / | ncdu -f-
. Bu şekilde uzak sunucunun disk kullanım raporunu kendi ekranınızda görebilirsiniz.
ncdu ile gizli dosyaları nasıl gösteririm?
NCDU tarama ekranındayken e
tuşuna basarak gizli dosyaları açıp kapatabilirsiniz. Böylece normalde görünmeyen .cache
gibi dizinleri de kontrol edebilirsiniz.
ncdu ile cache klasörlerini hariç tutmak mümkün mü?
ncdu --exclude /var/cache /
komutunu çalıştırarak tarama dışında bırakabilirsiniz. Böylece disk raporunuzda gereksiz klasörler yer almaz.
ncdu ile çıktıyı rapor dosyası olarak alabilir miyim?
ncdu -o rapor.json /
komutu ile JSON formatında rapor alabilirsiniz. Daha sonra bu raporu ncdu -f rapor.json
ile yeniden açıp incelemeniz mümkündür.
