Linux'ta "Cihazda Boş Yer Kalmadı" Hatasını Düzeltmenin En İyi 3 Yolu

Açık bir nedeni olmayan hatalar, üstesinden gelinmesi gereken en rahatsız edici problemlerdir. Ve Linux genellikle hata mesajlarında spesifik olsa da, bu, topu düşürdüğü birkaç zamandan biridir.

“Aygıtta yer kalmadı” hatası almak, özellikle sürücünüz dolu olmaktan çok uzaksa, çok az şey açıklar. Bu hata mesajı neden görünüyor? Diskte yeterli alan olmasına rağmen neden yeni dosyalar oluşturamıyorsunuz? Ve en önemlisi, bunu nasıl düzeltirsiniz?

Hadi bulalım.

Sabit Diskinizde Aslında Yeterli Alan Var(Hard Drive Actually Have Enough Space) mı ?

Bir düzeltme bulmak için acele etmeden önce, başlamak için bir sorun olduğundan emin olun. Sonuçta, sisteminizde disk alanı gerçekten tükendiyse, paniğe gerek yoktur. Daha fazla yer açmak için gereksiz verileri kaldırabilirsiniz.

Disk alanı hakkında bilgi almak için iki Linux sistem komutu vardır – du ve df. (Linux)du komutu disk alanı kullanımını tahmin ederken, df komutu diskte bulunan boş alanı analiz eder. Bunları sudo(sudo) ile birlikte kullanmak , diskte gerçekte ne kadar alan bulunduğuna dair doğru bir rapor verir.

  1. Du komutuyla başlayalım. Çıktının üzerinden geçmesi oldukça uzun ve hantal olabilir, bu yüzden -s ve -h bayraklarını kullanacağız. -s sonuçları özetler, -h ise insan tarafından okunabilir olmasını sağlar. Bu yüzden sudo du -sh / nerede / temel dizine işaret eden komutu girin.

  1. İzin verilmeyen tüm mesajlar için endişelenmeyin – sistemin tüm alt dizinlerinde bu şekilde gezinir. Sürücünün boyutuna bağlı olarak, her şeyi tekrar tekrar yaptığı için bir süre çalışır durumda bırakmanız gerekebilir.

  1. du taramayı bitirdiğinde, boyutlarının yanında basit bir dizin listesi çıkaracaktır. Örneğin, bu, sıradan bir dizine uygulanan du komutunun çıktısıdır.

Şimdi ne kadar boş alan olduğunu görmek için df kullanacağız. Yalnızca bağlı dosya sistemlerini ve kullanım istatistiklerini gösterdiği için df komutunun kullanımı çok daha kolaydır. Bir kez daha, çıktıyı insan tarafından okunabilir hale getirmek için -h bayrağını kullanacağız.

sudo df -h

Buradaki fikir, du ve df komutlarının sonuçlarını hesaplamaktır. Herhangi bir tutarsızlık, herhangi bir dosya veya klasör tarafından kullanılmamasına rağmen serbestçe kullanılamayan disk alanını gösterir.

Linux(Does Linux Show) Neden “ Cihazda Boş Yer Kalmadı(Space Left) ” Gösteriyor?

Diskinizde yeterli boş alan olmasına rağmen “Cihazda Boş Yer Kalmadı” hata mesajını görüyorsanız, hatalı olan donanım değildir. Hatanın kesin nedenini bulmak biraz sorun giderme gerektirebilir.

  • Son Silinen Dosya: Bu hatayı görmenin en yaygın nedeni, yakın zamanda silinen bir dosyadır. Genellikle bir işlem onu ​​kullanırken dosya silinir, dosya zaten gitmiş olsa bile ayrılmış alan korunur.
  • Yeterince Düğüm(Enough Inodes) Yok : Sık görülen diğer bir neden de yeterli düğüme(inodes) sahip olmamaktır . Düğümler , depolamadaki her dosyanın meta verilerini tutan bir Unix dosya sisteminin dizin sayfalarıdır . Ancak düğümler sınırsız değildir ve depolama alanından önce düğümlerin bitmesi size “Cihazda yer kalmadı” hatası verebilir.
  • Arızalı Sabit(Hard) Disk: O zaman elbette sabit diskin basitçe arızalanması ve görünen boş alanın çoğunun bozuk sektörler tarafından doldurulması olasılığı vardır. Sistem bu konumlara herhangi bir dosya yazamadığı için hata veriyor.

Düzeltme 1: Silinen Dosyaları Kullanarak İşlemleri Yeniden Başlatın(Using Deleted Files)

“Cihazda yer kalmadı” hatasının en olası nedeni, silinmiş bir dosyayı kullanmaya devam eden bir işlemdir. Neyse ki, bu hatayı düzeltmek kolaydır. Ayrılmış depolama alanını boşaltmak için işlemi yeniden başlatmanız(restart the process) yeterlidir .

  1. Sorunlu işlemi bulmak için lsof ve grep komutlarını kullanmanız gerekir. lsof komutu, çalışan işlemler tarafından kullanılan tüm açık dosyaların bir listesini verir ve grep, seçimi silinenlere daraltabilir. Yani sudo lsof / | grep silindi burada / temel dizindir ve | lsof'un çıktısını grep'e bağlamak için bir boru.

  1. Artık, hizmet adının aramada görünen hizmetin adı olduğu sudo systemctl restart service_name komutuyla etkilenen işlemi yeniden başlatabilirsiniz.

  1. Bunun gibi birden fazla işlem varsa veya belirli hizmetleri bulmakla uğraşmak istemiyorsanız, hepsini sudo systemctl daemon-reload komutuyla sıfırlayabilirsiniz. Bu, dosya sistemindeki değişiklikleri hesaba katarak tüm bağımlılıkları yeniden oluşturur.

Bundan sonra, işlem tarafından tutulan depolama alanı tekrar kullanılabilir olmalı ve herhangi bir hata yapmadan dosya yazmanıza izin vermelidir.

Düzeltme 2: Düğümleri Kontrol Et

Her sürücüde çok sayıda düğüm bulunurken, sonludur. Sisteminiz inanılmaz sayıda dosyayla doluysa, sürücünün depolama kapasitesini tüketmeden önce bu sınıra ulaşmak mümkündür. Bu nedenle, çok sayıda küçük dosya yerine büyük dosyalara sahip olmak daha iyidir.

-i bayrağını df komutuyla kullanarak düğümlerin kullanılabilirliğini kolayca kontrol edebilirsiniz. Bunun gibi:

sudo df -i

Bu, şu anda kullanımda olan miktarla birlikte dosya sisteminde bulunan toplam düğüm sayısını açıkça gösterecektir. Sisteminizde boş inode kalmadıysa “Cihazda yer kalmadı” hatasının kaynağı budur.

Düğümler yalnızca sürücü ilk biçimlendirildikten sonra oluşturulduğundan, daha fazla düğüm oluşturmanın bir yolu yoktur. Yapabileceğiniz tek şey, gelecekteki dosyalar için düğümleri boşaltmak için gereksiz dosyaları silmek.

Düzeltme 3: Kötü Blokları İşaretle

Veri(Data) bozulması, herhangi bir sabit sürücünün kaçınılmaz kaderidir. Yeni bir sürücü bu sorunla karşılaşmazken, eski sabit diskler yavaş yavaş "kötü" olmaya başlar.

Bunun anlamı, dosya sistemi hala onları işlevsel olarak görse bile, sabit sürücünün bölümlerinin kullanılamaz hale gelmesidir. Bu bozuk bloklar, gerçekte onlara hiçbir dosya yazılamadığında, sürücüdeki görünen boş alanı yanlışlıkla şişirir. Bu, işletim sistemi bu konumlarda herhangi bir veri depolamayı denediği ve başarısız olduğu için "Cihazda yer kalmadı" hatasına yol açar.

Bu sorunu çözmenin gerçek bir yolu yoktur, çünkü bozuk sektörler bir sabit sürücünün fiziksel aşınmasının ve yıpranmasının bir sonucudur. Yapabileceğiniz tek şey, artık dosya sistemi tarafından referans alınmamaları için bozuk sektörleri işaretlemektir.

Bunu yapmak için Canlı CD'den(Live CD) önyükleme yapmanız gerekir , çünkü çalışan bir sürücüde Dosya Sistemi Kontrolü gerçekleştiremezsiniz. (File System Check)Bunu yaptıktan sonra, sadece aşağıdaki komutu kullanın:

sudo fsck -vcck /dev/sda

Bu, /dev/sda'yı onarmak istediğiniz sürücünün yolu ile değiştirir. Bu, sürücüdeki tüm bozuk blokları otomatik olarak algılayacak ve bunları kullanılamaz olarak işaretleyecektir. Ancak size ekstra depolama kapasitesi sağlamayacaktır, bu nedenle sürücüde yer açmak için bazı gereksiz dosyaları temizlemeye hazır olun.

“Cihazda Boş Yer Kalmıyor” Hatasını Düzeltmenin En İyi Yolu Nedir?

Ubuntu'da(Ubuntu) veya başka bir Linux dağıtımında "Cihazda yer kalmadı" hatası görmenin genel nedeni, çalışan bir işlem tarafından kullanılmaya devam eden silinmiş bir dosyadır. Bu, dosyanın kapladığı depolama alanını ayırarak diğer işlemlerin bu alana veri yazmasını engeller.

Bu sorunu çözmek de en kolayıdır, çünkü tek yapmanız gereken söz konusu işlemi yeniden başlatmaktır. Bununla birlikte, hatanın diğer nedenlerini çözmek o kadar kolay değildir.

Sürücünüz ister bozuk veri bloklarından etkilenmiş olsun, isterse düğüm sayısı tükenmiş olsun, bu sorunları düzeltmenin doğrudan bir yolu yoktur. Yazılacak yeni verilere yer açmak için mevcut dosyaları silmelisiniz.



About the author

10 yılı aşkın deneyime sahip bir bilgisayar uzmanıyım. Boş zamanlarımda, bir ofis masasında yardım etmeyi ve çocuklara interneti nasıl kullanacaklarını öğretmeyi severim. Becerilerim pek çok şeyi içeriyor ama en önemlisi, insanların sorunları çözmelerine nasıl yardım edeceğimi biliyorum. Acil bir konuda size yardımcı olabilecek birine ihtiyacınız varsa veya sadece bazı temel ipuçları istiyorsanız, lütfen bana ulaşın!



Related posts