Grub Troubleshooting

Grub Rescue Commands to Fix Boot Issues

grub rescue

error: unknown filesystem (grub önyükleme hatası)

Menü girdisindeki bir yanlış yapılandırmanın başarısız olması durumunda, sistemi önyüklemek için GRUB 2 kabuğunu kullanabilirsiniz.

Örneğin, linux dağıtımınızda aşağıdaki görseldeki hatayı alırsanız, sisteminiz dosya sistemini tanımıyor demektir.

grub rescue hatasi

 Yapmanız gereken ilk şey, önyükleme bölümünün nerede olduğunu bulmaktır. Bunu, GRUB 2'nin bulduğu bölümlerin ve disklerin bir listesini gösterecek olan ls komutuyla yapabilirsiniz.

ls 

Yukarıdaki örnekte, işler kolaydır. Üzerinde yalnızca üç bölüm bulunan tek bir disk (hd0) ve (hd0,gpt3) (hd0,gpt2) (hd0,gpt1) bölümleri vardır.

Listelenen diskler ve bölümler sisteminizde farklı olacaktır. Örneğimizde, disk MBR bölümleme şeması kullanılarak bölümlendiğinden hd0'ın ilk bölümüne msdos1 adı verilir. GPT kullanılarak bölümlenmiş olsaydı, ad gpt1 olurdu.

Linux'u önyüklemek için bir çekirdeğe ve başlangıç RAM diskine (initrd) ihtiyacımız var. (hd0) içeriğini kontrol edelim. 

grup> ls (hd0,gpt1)/ 

Yukarıda ki görseldeki gibi sırayla içeriğe bakarken, kolay bir şekilde bulduk.

Bir Linux terminaline benzer şekilde uzun bir liste elde etmek için -l parametresini ekleyebilirsiniz. Disk, bölüm ve dosya adlarını otomatik tamamlamak için tab tuşunu kullanın.

ls -l (hd0,gpt2) 

Önyükleme hatası durumunda GRUB 2, daha önce bahsettiğimiz kabuğun basitleştirilmiş bir sürümü olan bir kurtarma kabuğu yükleyebilir. Grub rescue> olarak görüntülenen komut isteminden tanıyacaksınız. Bir sistemi bu kabuktan önyükleme işlemi.

grub rescue hatasi

Yukarıda, hangi bölümün önyükleme bölümü olduğunu bulduğumuza göre, set prefix= komutunu ve ardından GRUB 2 dosyalarını içeren dizinin tam yolunu kullanın. 

set prefix=(hd0,gpt2)/boot/grub

Şimdi normal ve linux modüllerini insmod komutuyla yükleyin.

 insmod normal
 insmod linux

Linux çekirdeğini linux komutuyla yükleyin, ardından çekirdeğe giden yol ve çekirdeğe işletim sisteminin kök dosya sisteminin nerede olduğunu söylemek için root= seçeneği kullanın.

linux /vmlinuz root=/dev/sda1

İlk RAM diskini initrd ile ve ardından initrd'ye giden ımg dosyasını tam yolu yükleyin.

initrd /initrd.img

Şimdi, sistemi boot komutunu kullanarak önyükleyin.

initramfs yüklendikten sonra, inceleyebilir veya reboot ile çıkabilirsiniz.

Blog'a Dön