Bu rehberde, birden fazla işletim sistemi (dual-boot veya multi-boot) kullanırken, diğer işletim sistemlerinin GRUB menüsünde görüntülenmeme sorununu nasıl çözebileceğimizi inceleyeceğiz. Kolaylık olması açısından GRUB 2 yerine GRUB terimini kullanacağız.
1. os-prober
GRUB bootloader, Linux kurulumu sırasında varsayılan olarak yüklenir. Bu süreçte, GRUB diskteki diğer önyüklenebilir (bootable) bölümleri otomatik olarak bulmalı ve onları GRUB menüsüne eklemelidir. Ancak, bazen bu işlem başarısız olabilir ve diğer işletim sistemlerini kendimiz eklememiz gerekebilir.
Bu durumda os-prober komutunu kullanarak, GRUB’un diğer işletim sistemlerini tanımlayamama sorununu düzeltebiliriz. os-prober, diskteki önyüklenebilir bölümlerde bulunan diğer işletim sistemlerini listeleyen bir komuttur.
Kurulum sırasında GRUB menüsünde tüm tespit edilen işletim sistemlerini göstermek için kullanılır. Ayrıca, kurulum tamamlandıktan sonra GRUB menüsünü yeniden yapılandırmak için de kullanılabilir.
os-prober ile OS Tespiti
os-prober bazen diğer işletim sistemlerini bulamayabilir. Örneğin, Ubuntu 20.04’te os-prober varsayılan olarak devre dışıdır, bu nedenle kurulum sırasında başka işletim sistemlerini tespit edemez. os-prober’i çalıştıralım:
$ sudo os-prober
/dev/sda1:Windows 10:Windows:chain
Eğer sistemimiz çift önyükleme (dual-boot) yapılmışsa, ikinci işletim sisteminin adı ile benzer bir çıktı alırız. Aksi halde, sadece tek bir işletim sisteminin bulunduğunu gösteren boş bir çıktı alırız.
Eğer şu sonucu alırsak, os-prober yüklü değildir ve kurmamız gerekir:
$ sudo os-prober
Command 'os-prober' not found, but can be installed with:
sudo apt install os-prober
os-prober’in etkin olup olmadığını kontrol edelim:
$ sudo cat /etc/default/grub | grep 'GRUB_DISABLE_OS_PROBER'
GRUB_DISABLE_OS_PROBER=true
Çıktı “false” ise, os-prober aktif demektir. Aksi takdirde, “true” ise, etkin değil demektir. Bu değeri false yaparak etkinleştirebiliriz. Eğer bu ayar dosyada yoksa, /etc/default/grub
dosyasına şu satırı ekleyelim:
GRUB_DISABLE_OS_PROBER=false
Daha sonra dosyayı kaydedelim. GRUB menüsünü güncelleyelim ve değişikliklerin etkili olması için sistemi yeniden başlatalım:
$ sudo update-grub
$ sudo reboot -f
Yeniden başlattıktan sonra, keşfedilen işletim sistemlerinin GRUB menüsünde görünmesi gerekir.
Not: os-prober güvenli değildir, çünkü diskteki tüm bölümleri root yetkileriyle mount ederek diğer işletim sistemlerini tespit eder. Bu, root yetkilerinin ele geçirilmesi için kullanılabilir, bu nedenle bazı dağıtımlarda os-prober devre dışı bırakılmıştır.
2. GRUB’u Yeniden Kurma
Bazı durumlarda, bir güncellemeden sonra Windows diskin MBR’sini (Master Boot Record) değiştirebilir. Bu durum, BIOS’un doğrudan Windows bootloader’a geçmesine sebep olabilir. Aynı durum, ikinci bir işletim sistemi olarak Windows kurulumu sonrasında da meydana gelebilir.
Her iki durumda da GRUB’u yeniden kurmamız gerekir. Eğer Linux’e erişemiyorsak, bir live CD/USB kullanarak Linux terminaline erişim sağlayabiliriz.
Disk sürücüsünü ve önyüklenebilir bölümleri listelemek için:
$ sudo fdisk -l
Örneğin, sistemimizdeki tek disk “sda” olarak listelenmişse, GRUB’u yeniden kurmak için şu komutları çalıştıralım:
$ sudo mount /dev/sda1 /mnt
$ sudo grub-install --boot-directory=/mnt/boot /dev/sda
$ sudo update-grub
$ sudo reboot -f
Eğer Windows ile çift veya çoklu önyükleme yapmayı planlıyorsanız, önce Windows’u, ardından diğer Linux dağıtımlarını kurmalısınız.
3. Boot-Repair Kullanımı
Boot-Repair, genellikle karşılaşılan önyükleme sorunlarını çözmek için kullanılan bir araçtır. Boot-Repair, önyükleme bilgisi oluşturma, GRUB yapılandırma, GRUB’u temizleme ve disk üzerinde GRUB’u kurmak gibi işlemleri yapar.
Boot-Repair’i yüklemek için:
$ sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt update
$ sudo apt install -y boot-repair && boot-repair
Yüklendikten sonra Sistem Ayarları altında Yönetim (Administration) bölümünde bulunabilir. Uygulamayı başlatıp “Önerilen Onarım” (Recommended Repair) seçeneğini izleyerek işlemleri tamamlayabiliriz.
4. Sonuç
Bu rehberde, GRUB menüsüne diğer işletim sistemlerini eklemenin yollarını inceledik. os-prober ile diğer işletim sistemlerini nasıl keşfedeceğimizi, GRUB’u nasıl yeniden kuracağımızı ve Boot-Repair aracını nasıl kullanacağımızı öğrendik.
Ekstra işletim sistemlerini eklerken önyüklenebilir bölümlerin farkında olmak önemlidir. Linux sistemine erişimi kaybedersek, live CD/USB ile kurtarma yapılabileceğini unutmayalım.