Dosya Sistemi Kullanım Miktarını Analiz Etmek

Raspberry Pi’ın disk alanı tükendiğinde çalışamaz ve durur. Bu başlıkta, Raspberry Pi bilgisayarının dosya sisteminin kullanım durumunun kolayca nasıl analiz edileceği ve alınabilecek tedbirler hakkında bilgiler yer almaktadır. Öncelikle diskin yani SD kartın fiziksel kapasitesine bakıp bu kapasitenin ne kadarının disk bölümleri için kullanıldığına bakılmalıdır. Örneğin 32GB bir bölüm üzerinde 4GB’lık bir Linux bölümü oluşturulmuş olabilir. Bu durumda hiçbir zaman kullanılamayacak, boşa gitmiş bir 28GB’lık alandan bahsedebiliriz. lsblk komutu ile SD kartın fiziksel kapasitesinin ne kadar olduğuna bakalım:

Ekran çıktısından görülebileceği gibi SD kartın fiziksel boyutu 7.5GB (mmcblk0) sahip olduğu bölümlerin toplamı da 7.5GB’dır. fdisk programının çıktısında disk bölümleri daha rahat görülebilir:

Şimdi mevcut disk bölümlerinin ne kadarının dolu yani kullanımda olduğuna bakalım, bunun için df programı kullanılabilir:

Linux başarımı artırmak için diski birçok dosya sistemine ayırır. Yukarıdaki df çıktısında bu bölümleri görebilirsiniz. En önemli bölüm / kök dizinin bulunduğu 7.1GB’lık bölümdür. Bu bölümün %62’si kullanılmaktadır. Kök dizinin içerisinde yüz binlerce dosya ve dizin bulunmaktadır. Hangi dizinin ne kadar yer kapladığını görmek du (disk usage) programı kullanılabilir. du programı kendisine seçenek olarak verilen dizinin içerisindeki tüm dizin ve dosyaların toplam miktarını görüntüler. Örneğin:

/var dizini içerisinde çalıştırılan du komutu ile dizin içindeki tüm dizinlerin diskte kapladıkları alan listelenmektedir. Komuta eklenen -s seçeneği (summerize) alt dizin detaylarını listelenmemesini, sadece özet olarak toplam miktarın listelenmesini sağlamaktadır. -s seçeneğini kaldırarak daha detaylı bir listeleme gerçekleştirebilirsiniz. Benzer şekilde, bu yöntem kullanılarak, diskte kapladığı alan listelenmek istenen her dizin için bu komutun çalıştırılması gerekir.

Daha pratik bir listeleme için ncdu (NCurses Disk Usage) programı oldukça faydalıdır. ncdu interaktif çalışan bir programdır ve dizinler içerisinde dolaşarak dizinin toplam miktarı kolayca öğrenilebilir. Programı yüklemek için aşağıdaki komutları çalıştırın:

Kurulum tamamlandıktan ncdu programını / kök dizin içinde çalıştırmak için aşağıdaki komutu kullanabilirsiniz (Dizin belirtilmezse sadece içinde bulunulan dizin taranır).

Ncdu’nun çıktısında, her satırda dizinin diskte kapladığı toplam alan ve diğer dizinlere kıyasla ne kadar yer kapladığı # karakterleri ile gösterilir. Dizinlerin içerisinde dolaşmak için klavyedeki ok tuşları ve enter tuşu kullanılabilir. Dizin boyutlarını % (yüzde) olarak görüntülemek için klavyeden g tuşunu, seçili dizini silmek için de d tuşunu kullanabilirsiniz.

Disk Dolu Hatası

Bir dosya sisteminde dosya boyutundan bağımsız olarak bulunabilecek dosya sayısı, dosya sistemi oluşturulurken tanımlanan inode (index node) sayısı ile belirlenir. inode her bir dosyaya karşılık gelen tekil bir sayıdan ibarettir ve dosya hakkındaki bilgilere (erişim izinleri, sahiplik, oluşturma/değiştirme zamanı vs) erişmek için kullanılır. Dosya sistemi üzerinde inode sayısını aşan miktarda dosya oluşturulursa “disk dolu / disk full” hatası ile karşılaşılabilir. Dediğimiz gibi bu, dosya boyutlarından bağımsız bir tanımlamadır ve inode sayısı dosya sistemi oluşturulurken tanımlanır. Dosya sistemi tarafından desteklenen ve kullanılan inode sayısını görmek için df aracına –i seçeneği geçilebilir.

Yukarıdaki ekran çıktısında dosya sistemlerinde bulunabilecek dosya sayıları (inodes) ile mevcut dosya sayıları (IUsed) listelenmiştir. Diskin dolmasına neden olacak boyutta dosya olmamasına rağmen disk dolu hatasını alırsanız inodes sayısına göz atmalısınız. Eğer inodes sayısı tükenmişse muhtemelen sonsuz döngüye girmiş bir program/betik çok sayıda boş        dosya üretmiştir. Dosya sistemi yapısı hakkında daha fazla bilgi için “Dosya Sisteminin Yapısı (SD Kart) ve Onarım” başlığına göz atabilirsiniz.

Disk temizliği yapmak

Raspberry Pi bilgisayarı, günümüz de halen sınırlı kabul edilebilecek kapasitelerde SD kartları, disk ortamı olarak kullanmaktadır. Aktif çalışan ve kullanılan bir sistemin disk kullanım miktarı zamanla artar. Buna örnek olarak sonradan yüklenen paketler ve otomatik güncellenen paketler, yükseltilen işletim sistemi (upgrade) ve sürekli olarak büyüyen log dosyaları (/var/log dizini) örnek verilebilir. Diskteki boş alan miktarı kritik seviye düştüğünde çeşitli servis ve programlar dolu disk hatası verir ve çalışmasını normal şekilde devam ettiremez. Bu durum Raspberry Pi bilgisayarının çalışamayacak duruma gelmesine kadar gidebilir.

Raspberry Pi OS işletim sisteminin kullandığı paket yöneticisinin olağan çalışma yapısından kaynaklanan gereksiz disk kullanımları oluşabilir. Sistemden kaldırılan paketlerin bağımlılıklarını da kaldırmak için autoremove komutunu kullanabilirsiniz.

Raspberry Pi OS işletim sistemi ile beraber gelen Wolfram (~650MB) ve Libreoffice (~250MB) programları da yüksek disk kullanımına sahiptir. Kurulu olan; fakat kullanılmayan programlar Linux’un başarımına doğrudan olumsuz bir etkiye sahip değildir. Fakat kullanmıyorsanız bu programların paketlerini de sistemden kaldırabilirsiniz. Kaldırmak için aşağıdaki komutları verebilirsiniz:

Raspberry Pi sürekli olarak /var/log dizini altına günlük kayıtları ekler. Zamanla bu dizin aşırı yer kaplar duruma gelir. Zaman zaman disk kullanım durumunu kontrol ederek buradaki dosyaları temizleyebilirsiniz.

Linux mimarisinde geçici dosyalar için /tmp ve /var/tmp dizinleri kullanılır. Bu dizinler geçici dosyaların depolanacağı bir konum olarak kabul edilmiştir. Geçici olarak bir dosya oluşturmak isteyen bir program dosyasını bu dizin altında oluşturur ve işi bittiğinde siler. Bazen programlardaki hatalardan veya kullanıcı kaynaklı durumlardan buradaki dosyalar silinmezler. Raspberry Pi bilgisayarını yeniden başlattıktan sonra burada oluşmuş büyük boyutlu dosyaları güvenli şekilde silebilirsiniz. Hatırlamak gerekir ki, bu dizindeki dosyaların silinmesi o anda çalışan programların çalışmasını olumsuz etkileyebilir. Bunun için dosya oluşturulma tarihini kendinize ölçüt alabilirsiniz.

Grafik ortamda disk temizleme araçlarını kullanmak

Bleachbit[1], diskteki gereksiz dosyaları silerek boş alan açan ve grafiksel ortamda çalışan kullanışlı programlardan birisidir. Linux, Windows, Mac OS ve Blackberry gibi işletim sistemlerinde çalışabilen Bleachbit ile temizlik yapabileceğiniz alanlar şunlar:

  • Bellek ve Swap.
  • APT önbelleği.
  • Bash komut günlük dosyaları.
  • Geçici yerel ve internet dosyaları (tmp).
  • Kırık uygulama kısa yolları ve dosya uzantıları.
  • Pano dosyaları.
  • X11 hata ayıklama kayıtları.
  • Yüzlerce uygulamanın geçici dosya arşivlerini silebilme (aMSN, Chromium, aMule, Firefox, LibreOffice).
  • Boş disk alanının üzerine yazarak güvenli silme (kurtarılamayacak şekilde silme).

Programı yüklemek için aşağıdaki komutu uygulayabilirsiniz:

Programı çalıştırmak için Raspberry Pi menüsünden System Tools altındaki BleachBit veya BleachBit (root) seçeneklerine tıklatabilirsiniz. BleachBit (root) seçeneği ile program root yetkileri ile çalışacağından sistemde daha kapsamlı bir temizlik yapmayı sağlar. Program çalıştığında bizi aşağıdaki gibi bir arabirim karşılar:


BleachBit programın arabirimi

Silme işlemini başlatmak için soldaki kategori ağacından temizlik yapmak istediğiniz kısımları seçin ve araç çubuğundaki Clean simgesine tıklatın.

Gereksiz Grafik Kullanıcı Arabirimi (GUI) Dosyalarını Kaldırmak

Raspberry Pi’ı headless (monitörsüz) olarak kullanıyorsanız X11 grafik ortamına ihtiyacınız yok demektir. Bununla ilgili dosyaları sistemden kaldırarak bir miktar boş disk alanı oluşturabilirsiniz:


[1] BleachBit ana sayfası: https://www.bleachbit.org/

Yazar: Özgür Koca

Yazar - Tankado.com

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.