Çekirdek Sorunları

Arch Linux Türkiye Belgeleri sitesinden
Atla: kullan, ara


Bu yazı açılışta çekirdek hatası (kernel panic) veren bir sistemin nasıl onarılacağını açıklamak üzere yazılmıştır.

Konu başlıkları

Sorun Çözme

Sorun gidermeyi kolaylaştırmak için çekirdeğin sessiz kipte olmaması gerekmektedir. Dolayısıyla, eğer GRUB yapılandırma dosyanızda kernel satırında quiet var ise kaldırın, böylece detaylı bir hata çıktısı görebilirsiniz. Hatalarla ilgili wikide pek çok sorun giderme kılavuzu bulabilirsiniz. Ancak öncelikle /boot dizinindeki çekirdeğe ilişkin dosyaların doğru olduğunu kontrol etmelisiniz. Yanlış derlenmiş bir çekirdek ve bu çekirdeğe ait dosya çekirdek hatası almanıza neden olabilir. Ayrıca bozuk veya hatalı donanımların da çekirdek hatalarına neden olduğu bilinmektedir. Dolayısıyla herhangi bir donanım sorunu yaşamadığınızdan da emin olmalısınız. Eğer çekirdek hatasının sizden kaynaklanmadığından eminseniz, birinci seçenekteki yönergelerle çekirdeği yeniden kurun. Eğer /boot dizinindeki dosyaların hatalı olduğuna inanıyorsanız ikinci seçenekteki yönergeleri takip edebilirsiniz.

Seçenek 1: Çekirdeği Yeniden Kurmak

Çekirdeği yeniden kurmak sistemde çok büyük değişiklik yapılmamışsa en iyi yöntemdir.

Kurulum CD'sinden başlatın

İlk olarak kurulum CD'sini kullanarak bilgisayarınızı başlatın, sisteme arch kullanıcısı olarak giriş yapın.

# arch

Dosya sistemi ve chroot

CD'den başlattığınızda ufak ve bazı temel araçları barındıran fonksiyonel bir GNU/Linux ortamı kullanıyor olacaksınız. Öncelikle, kök dizininizi /mnt altına bağlamanız gerekmektedir.

# mount /dev/sdXY /mnt

Eğer /boot dizininiz farklı bir disk bölümünde ise onu da bağlamayı unutmayın.

# mount /dev/sdXZ /mnt/boot

Yeni çekirdekler çekirdek ortamını hazırlamak için başlangıç dosya sistemi (initial ramdisk) kullanır. Çekirdeği tekrar kurduğunuzda bu ramdisk mkinitcpio ile tekrar oluşturulur. mkinitcpio aracının bir özelliklerinden biri de bilgisayarınız açılırken hangi modüllerin yükleneceğini otomatik bulmasıdır. Bu otomatik bulma işlemi için /dev, /sys ve /proc dizinlerinin chroot altında bağlanması gerekmektedir:

# mount -t proc none /mnt/proc
# mount -t sysfs none /mnt/sys
# mount --bind /dev /mnt/dev

Şimdi diske chroot yapabilirsiniz:

# chroot /mnt

Önceki çekirdek sürümüne geri dönmek

Eğer pacman'i paketleri önbellekte saklayacak şekilde ayarlamışsanız, eski sürüme kolayca dönebilirsiniz. Eğer önbellekte eski çekirdek paketlerini bulundurmuyorsanız, bu paketleri bir şekilde bulmanız gerekmektedir.

Önbellekte eski paketleri tuttuğunuzu varsayarsak, en son çalışan çekirdeği şu şekilde kurabilirsiniz:

# pacman -U /var/cache/pacman/pkg/linux-2.6.x.xx-x.pkg.tar.gz

Tabii ki bu komutu kurmak istediğiniz çekirdek sürümüne göre uyarlamanız gerekmektedir.

Önbellekte eski paketleri tutmuyorsanız, kurulum CD'si ile gelen çekirdek paketini kurabilirsiniz. Mesela, 2008.06 kurulum CD'sinde addons/core-pkgs/linux-2.6.25.6-1-i686.pkg.tar.gz paketi yer almaktadır. Bu dosyayı kurabilirsiniz.

İkinci Seçenek: Sistem önyükleyicisi yapılandırmasını kontrol edin

Çekirdek hatası sistem önyükleyicisi (grub veya lilo) yapılandırmasındaki bir aksaklıktan kaynaklanıyor olabilir. Mesela, diskleri tekrar bölümlendirme sonrasında bölüm sıralamasında değişiklikler olabilir. Dolayısıyla, GRUB kullanıcıları root ve kernel satırlarını yeni bölümlendirme şemasına göre uyarlamak zorundadır.

Yeniden başlatın

Şimdi sistemi tekrar başlatıp, yaptığınız değişikliklerin çekirdek hatasını giderip gidermediğini kontrol edebilirsiniz. Ayrıca, önceki bir çekirdek sürümüne döndüğünüzde sistem çalışıyorsa, çekirdeğe ilişkin Arch Linux haberlerini kontrol edin ve gerekirse hata kaydı girin.

Kişisel araçlar
GOOGLE
Diğer dillerde