Ubuntu 9.10 ile yeni bir açılış yöneticisi sürümü GRUB 2 'yi kullanmaya başladık; fakat GRUB 2 ayarlarını düzenlenmek önceki sürümlerden farklı olduğu için bildiklerimiz en başta pek işe yaramadı. Eğer GRUB yapılandırmayı bilenler şanslarını GRUB 2 'de de denedilerse artık 'menu.lst'nin olmadığının farkına varmışlardır. Bu yazıda GRUB 2 ayarlarının nasıl yapılandırılabileceğini anlatacağız.
İlk olarak Terminal'e :
$ sudo gedit /etc/default/grub
yazıyoruz. Kullanıcı parolamızı girdikten sonra açılan gedit penceresinde
GRUB_DEFAULT=0
yazan bölümde GRUB 2 'nin hiçbir seçim yapmazsak varsayılan olarak hangi işletim sistemini açacağını seçiyoruz. Eğer bilgisayar açılırken GRUB 'de işletim sistemlerinin hangi sırayla dizildiğini hatırlıyorsanız, en üsttekini 0 kabul edip aşağı doğru sayarak varsayılan olmasını istediğiniz işletim sisteminin numarasını GRUB_DEFAULT=0 'daki 0'ın yerine yazmanız yeterlidir. Eğer hatırlamıyorsanız Terminal'de
$ gedit /boot/grub/grub.cfg
yazarak grub.cfg dosyasını açıyoruz. Bu dosyada değişim yapma hakkımız yok; değişiklik yapsak da değişikliklerimizi uygulamak için yazdığımız “sudo update-grub” komutundan sonra dosya tekrar eski halini alıyor. Bu yüzden bu dosya içinde değişiklik yapmıyoruz. Açılan pencerede 54. satırda
### BEGIN /etc/grub.d/10_linux ###
menuentry "Ubuntu, Linux 2.6.31-14-generic" {
bölümünü buluyoruz. Buradan itibaren alta doğru GRUB'deki seçenekleri görüyoruz. Her menuentry'den sonra GRUB'deki seçeneğin adı yazıyor. Bu şekilde her menuentry'yi sayarak ve en üstteki menuentry'yi 0 kabul ederek istediğimiz işletim sisteminin sırasını belirleyebiliriz. Mesela benim bilgisayarımda:
### BEGIN /etc/grub.d/10_linux ###
menuentry "Ubuntu, Linux 2.6.31-15-generic" {
}
menuentry "Ubuntu, Linux 2.6.31-15-generic (recovery mode)" {
}
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Windows 7 (loader) (on /dev/sda1)" {
}
menuentry "Windows Vista (loader) (on /dev/sda3)" {
}
bu şekilde sıralanıyor. ( “{“ ve “}” parantezleri arasındakileri buraya aktarmadım) Şimdi ben Windows 7 'yi varsayılan atamak istersem biraz önce açmış olduğumuz /etc/default/grub dosyasındaki 'GRUB_DEFAULT' değerini 3 olarak belirlemeliyim. “GRUB_DEFAULT=3” .
Bu bölüme istersek
GRUB_DEFAULT=”Windows 7 (loader) (on /dev/sda1)”
gibi menuentry'nin yanındaki işletim sistemi ismini de yazabiliriz. Son olarak buraya
GRUB_DEFAULT=saved
yazabiliriz. Bu, GRUB menüsünde en son açtığımız işletim sisteminin -hiçbir seçim yapmazsak- bir sonraki açılışta da açılmasını sağlayacaktır.
Gelelim varsayılan işletim sisteminin kaç saniye sonra otomatik olarak açılacağını belirlemeye. Yine /etc/default/grub dosyasındaki
GRUB_TIMEOUT="10"
bölümünden bilgisayarın -varsayılan işletim sistemini otomatik olarak açmadan önce- bir seçim yapılmasını kaç saniye bekleyeceğini belirliyoruz.10 saniye beklemesini istemiyorsanız bu bölümde tırnak içindeki 10'u değiştirip dilediğiniz süreyi (saniye cinsinden) yazabilirsiniz.
GRUB 2 'de memtest+86 'yı menüden kaldırmak için Terminal'e
$ sudo chmod -x /etc/grub.d/20_memtest86+
yazmak yeterli olacaktır. Recovery seçeneğinin görünmesini istemiyorsanız;
$ sudo gedit /etc/default/grub
ile dosyayı açtıktan sonra
GRUB_DISABLE_LINUX_RECOVERY=true
satırını eklemeniz yeterli olacaktır.
Ayrıca istersek GRUB 2 menüsündeki sıralamayı da değiştirebiliriz. /etc/grub.d/ dizinindeki dosyaların isimleri “00_” , “10_” gibi sayılarla başlar. Bu dosyalardan “10” ile başlayan Linux'u, “30” ile başlayan ise diğer işletim sistemini temsil ediyor. Eğer Windows'un daha yukarıda görünmesini istiyorsanız, “30_” ile başlayan dosyanın ismindeki “30” sayısının yerine 10'dan daha küçük bir sayı (mesela “07”) yazmak yeterli olacaktır. Bu değişimi yapmak için ise root yetkisi ile /etc/grub.d/ dizinini açmak gerekiyor. Terminal'e
$ gksu nautilus /etc/grub.d
yazarak dizini açabiliriz ve isimlerde istediğimiz değişiklikleri yapabiliriz.
GRUB 2 'de arkaplan rengi değişimi veya arkaplana resim ekleme işlemi için ise Terminal'e yazdığımız
$ gksu gedit /etc/grub.d/05_debian_theme
komutu ile açtığımız dosyada değişiklikler yapabiliriz. 8. ve 9. satırlarda arkaplan renginin değişimini ayarlayabiliriz.
set menu_color_normal=white/black
set menu_color_highlight=black/white
Burada “menu_color_highlight” ile belirtilen ayar, GRUB 'da yukarı ve aşağı oklarla seçtiğimiz satırın renklerini belirliyor. Yukarıdaki örnekten (“black/white”) yazıların siyah, satırın ise beyaz olacağını anlıyoruz. “menu_color_normal” ise seçim dışı satırların görünüşünü belirler. Yine yukarıdaki örnekte seçim yapılmamış satırlar siyah üstüne beyaz yazı ile gösteriliyor. Yani ilk verilen renk yazının rengini, ikincisi ise satırın arkaplan rengini belirliyor.
Arkaplan resmini ise aynı dosyanın 16. satırından ayarlıyoruz.
for i in {/boot/grub,/usr/share/images/desktop-base}/moreblue-orbit-grub.{png,tga}
Bu satır kısa gibi görünse de işlem bizi biraz uğraştırabilir. Öncelikle png veya tga uzantılı bir resim seçiyoruz. Mesela home dizinimizde grub2.png isminde bir resmimiz olsun. Bu dosyayı iki şekilde GRUB arkaplanı yapabiliriz. Eğer resmi hiçbir yere kopyalamak istemiyorsak 16. satırı aşağıdaki gibi değiştiriyoruz.
{/boot/grub,/usr/share/images/desktop-base}/home/kullanıcı_adı/grub2.png
Eğer dosyayı /usr/share/images/desktop-base klasörüne kopyalamak istersek Terminal ile
$ sudo cp /home/kullanıcı_adı/grub2.png /usr/share/images/desktop-base
komutunu yazıyoruz. Ardından biraz önce açtığımız dosyanın 16. satırını
{/boot/grub,/usr/share/images/desktop-base}/grub2.png
şeklinde değiştiriyoruz.
Bu satır değişimi ile arkaplanımızı da ayarlamış olduk; fakat arkaplanın rengine göre GRUB menü yazılarının rengini değiştirmemiz gerekebilir. Arkaplanda resim olduğu zaman yazı ve satır renklerini yukarıda anlattığımız 8. ve 9. satırlardaki “menu_color_” ayarlarından değiştirmemizin bir faydası olmayacaktır. Onların yerine daha aşağıda bulunan 39. ve 40. satırlardaki
set menu_color_normal=white/black
set menu_color_highlight=black/white
ayarlarını değiştirmemiz gerekmekte. Yine ilk renk menü yazısının ikincisi ise satırın rengini belirliyor.
GRUB 2'yi yeniden kurmak da öncekine göre daha değişik. Mesela bilgisayarda Ubuntu varken Windows kurduk ve artık açılışta GRUB menüsünü göremiyoruz. O zaman Ubuntu 9.10 Live CD ile Ubuntu'yu açıyoruz. Terminal'e
$ sudo fdisk -l
yazdıktan sonra karşımıza disk bölümleriyle ilgili bilgiler gelecektir. Hangisinde Ubuntu kurulu olduğunu öğrenmemiz gerekiyor. Benim bilgisayarımda “/dev/sda4” te kurulu olduğu için örnek olarak bunu kullanacağım. Şimdi Ubuntu'nun kurulu olduğu disk bölümünü açıyoruz.
$ sudo mount /dev/sda4 /mnt
Eğer /boot ayrı bir disk bölümüne kurulduysa onu da açıyoruz.
$ sudo mount /dev/sdaX /mnt/boot
Şimdi komutları root olarak vermek için chroot komutu veriyoruz
$ sudo chroot /mnt
Artık GRUB 2'yi MBR'ye yükleyebiliriz.
$ grub-install /dev/sda
Bir hatayla karşılaşırsanız
$ grub-install --recheck /dev/sda
komutunu deneyebilirsiniz. Yükleme işleminden sonra CTRL + D ile chroot'tan çıkıyoruz. Artık açtığımız disk bölümlerini çıkarıyoruz. İlk olarak “dev”
$ sudo umount /mnt/dev
ardından “/mnt”
$ sudo umount /mnt
Artık sistemi yeniden başlatıp Ubuntu'yu açabilirsiniz. Yukarıda anlattığım şekilde GRUB 2'yi düzenleyebilir ve sistemi tekrar rahatça kullanmaya başlayabilirsiniz.