Donmalar Neden Kaynaklanır?
Donmaların sebepleri yazılımsal veya donanımsal olabilir. Bazı donmalar her ikisinin birleşiminden de kaynaklanabilir. En çok karşılaşılan donma sebeplerini listeleyelim:
- Hafıza(Memory) hataları
- Driver(sürücü) uyumsuzluğu
- Kalitesiz harici aygıtlar
- Sistem kaynakları
- Yazılımsal hatalar
Bunlardan hafıza hatalarında karşılaşılan genel mesaj “System is dangerously low in resources” şeklindedir. Böyle bir hatayla karşılaşıyorsanız bunun sebebi büyük ihtimalle memory fragmentation(hafıza dağılmasıdır). Hafıza ile ilgili kaynaklanan sorunlar genelde hafızayı kötü kullanan yazılımların, kapatılırken bilgisarın Ram’ini temiz bir şekilde terk edememesinden kaynaklanır. Bunun çözümü o programı kapatmaktan veya bilgisayarınızı baştan başlatmaktan geçer. Bazen düşük Ram’li bilgisayarlarda normal çalışan programların hafızayı doldurmasından dolayı, sanal bellek kullanılır. İşletim sistemi Ram üzerinde hızlı bir şekilde çalışması gereken prosesleri, harddisk üzerinde çalıştırmaya kalkar ve aşırı yavaşlama veya donma gerçekleşir. Bunun çözümü bellek miktarını yeni bir Ram alarak arttırmak veya bilgisayarın Ram’inin kaldıramayacağı programları açmamaktır.
Sürücü uyumsuzluğu da donmalara neden olabilir. Örneğin, grafik kartı üreticileri bazı ekran kartı modelleri için Linux desteği vermiyor veya düzgün çalışan bir sürücü çıkarmıyor. Bundan dolayı sistemde donmalar yaşayabiliyor. Bunun çözümü ekran kartı desteğini beklemek veya sistemi güvenli grafik modunda açmaktır.
Bazen harici usb aygıtların da donmalara neden olduğunu görmekteyiz. Soruna neden olan aygıt fiziksel olarak kaldırıldığı zaman donmalarda ortadan kalkacaktır.
Sistem kaynakları ilgili hatalarda bilgisayar çoğu zaman hiçbir sinyale cevap vermeyecek şekilde kilitlenir. Sistem kaynaklarını yöneten birim işletim sistemidir. İşletim sisteminin kendinde varolan bir açık donmalara neden olabilir.
Yazılımsal hatalara baktığımızda programlardaki bazı açıkların donmalara sebebiyet verdiğini görebiliriz. Açıklar dışında zararlı yazılımlar da donmalara neden olabilir.
Linux İşletim Sistemleri Donmalardan Nasıl Kurtarılır?
Linux tabanlı bir işletim sistemini kurtarmak için Windows işletim sistemlerinden farklı şeyler yapmalısınız. Ctrl+Alt+Del kombinasyonu hiçbir işe yaramayacaktır. Ctrl+Shift+Esc yaparak Sistem Yöneticisini de açamazsınız. Linux donduğu zaman eğer donmanın bir program tarafından kaynaklandığını düşünüyorsanız bunu bilgisayarı baştan başlatmadan çözebilirsiniz. Bu durumda öncelikle Ctrl+Alt+F1 tuş kombinasyonuna basıp konsola düşüyoruz. Kullanıcı adı ve şifremizi yazdıktan sonra “ps -aux” yazıyoruz. Bu bize tüm prosesleri bir çırpıda gösterecektir. Eğer bir çırpıda görmek istemiyorsanız “ps -aux | less” şeklinde yazabilirsiniz. Sorun oluşturan programın id’sini bir yere yazın. “kill -9 [program_id]” yazarak programı sonlandırabilirsiniz. Daha sonra Ctrl+Alt+F7 GUI’ye dönmenizi sağlayacaktır.
Ctrl+Alt+BackSpace, Ctrl+Alt+Del komutunun eşdeğeridir fakat karşınıza sistem monitörü çıkmaz. Sadece GUI baştan yüklenir. Ubuntu’da bu işi Alt+PrtSc+K tuş kombinasyonu yapar. Eğer karşınıza sistem monitörünün çıkmasını çok istiyorsanız, klavye ayarlarından Logout’a atanan Ctrl+Alt+Del kombinasyonunu sistem monitörü için değiştirebilirsiniz.
Yukarıda klavye kısayolları ayarları bulunmaktadır. Burada sol menüde System yazan seçeneğe tıkladığımızda kombinasyonumuzun nereye atandığını görebiliyoruz. Bunu kaldırmak için üzerine tıklayıp “Space” çubuğuna basıyoruz. Daha sonra yine sol menüde görülen “Custom Shurtcuts“‘a tıklıyoruz.
Açılan pencerede (+) ekle butonuna tıkladığımızda yukarıdaki gibi bir ekranla karşılaşırız. Name kısmını istediğiniz gibi doldurabilirsiniz. Command kısmına ise komut satırında sistem monitörünü açmak için hangi komutu kullanıyorsanız onu yazıyorsunuz. Ben gnome kullandığım için “gnome-system-monitor” yazdım. Artık Ctrl+Alt+Del komutu sistem monitörünü açacaktır.
Eğer yukarıda anlatılanların hiçbiri donmadan kurtaramadıysa, kapatma düğmesine uzun süre basmadan yapabileceğiniz bir şeyler daha var, o da donma konusunu kernelle konuşmak. Kernelle Büyülü SysRq(Magic SysRq) tuşlarını kullanarak konuşacağız. Bunun için Alt+SysRq(Genelde PrintScreen tuşunun olduğu yerdedir)+? tuşularıyla oluşturulan kombinasyonlar kullanılır. Bunlarla bilgisayarı güvenli bir biçimde baştan başlatabilirsiniz. Alt+PrtSc tuşlarına basıyoruz ve sırasıyla R>S>E>I>U>B tuşlarına iki-üç saniye basılı tutuyoruz. unRaw kontrolü GUI’den klavyeye alır. tErminate bütün proseslere sonlandırma sinyali gönderir. kIll tüm proseslere durma sinyali gönderir. Tabi bunu zorlayarak yapar. Sync, diske verileri kaydeder. Unmount, dosya sistemlerini erişilemez yapar, reBoot baştan başlatma işini gerçekleştirir. R>E>I>S>U>B şeklinde sırasını değiştirerek kullanabilirsiniz. Akılda kalıcı olması için “Reboot Even If System Utterly Broken” yani sistem tamamen bozulduysa baştan başlat manasına gelen bir hatırlatıcı cümle uydurmuşlar. Magic SysRq tuşları hakkında daha fazla bilgi için linke bakabilirsiniz.
Eğer “kernel panic” hatası varsa kernelle konuşmak işe yaramayacaktır. Çünkü o da panik halindedir, konuşmak istemeyecektir. Bu durumda yapılacak en güzel şey bilgisayarın kapatma tuşuna uzun süre basmaktır.
Donmaların nedenini öğrenmek için log dosyalarını kullanabilirsiniz. Onlar genelde var/log klasörü altındadırlar.
Yaygın linux log dosyaları ve kullanım amaçları:
- /var/log/message: Genel mesajlar
- /var/log/auth.log: Oturum lolgları
- /var/log/kern.log: Kernel logları
- /var/log/cron.log: Crond logları
- /var/log/maillog: Mail sunucu logları
- /var/log/qmail/ : Qmail log klasörü
- /var/log/httpd/: Apache erişim ve hata logları
- /var/log/lighttpd: Lighttpd erişim ve hata logları
- /var/log/boot.log : System boot logları
- /var/log/mysqld.log: MySQL database server log dosyası
- /var/log/secure: Yetkilendirme logları
- /var/log/utmp or /var/log/wtmp : Login kayıt logları
- /var/log/yum.log: Yum log dosyaları
Eğer log dosyalarını daha düzenli görmek istiyorsanız log görüntüleyici kullanabilirsiniz. Ubuntu’da Log File Viewer adında bir log görüntüleyici mevcut. Linux sistemlerde Windows işletim sistemlerine nazaran, loglar sorun çözümünde daha çok kullanılır. Çünkü sistemin gizlemesi gereken herhangi bir bilgi yoktur. Sorunun kaynağını doğrudan öğrenebilirsiniz.
Kaynaklar
Bilgisayar Donmalarının Sebepleri
Büyülü Sistem İstekleri için Tuş Kombinasyonları
Yazınızı çok beğendim, gayet açıklayıcı ve bu bilgiler üzerinden araştırarak detaylara inebiliriz, teşekkürler.
Faydalı olduysa ne mutlu, başarılar.