Türkçeye Önyükleyici olarak çevrilen Bootloader, Linux işletim sistemi için önyükleme sürecinin en önemli bileşenlerinden biridir.
Bu yazımızda Bootloader’ın kullanım amacı ve Linux sisteminde nasıl bir role sahip olduğu hakkında bilgi aktaracağız. Güçlü ve oldukça esnek bir önyükleyici programı olan Grand Unified Bootloader'ı (GRUB) anlamak için öncelikle Linux’ta Bootloader sürecini anlamak gereklidir.
Linux Bootlaeder Süreci
Linux'ta önyükleme işlemi, PC'nizdeki güç düğmesine bastığınız andan oturum açma ekranı görünene kadar gerçekleşen bir dizi etkinliktir.
İşletim sisteminizin önyükleme sürecinde dört ana aşama olup aşağıda belirtmiş olduğumuz sıraya göre gerçekleşmektedir:
1.BIOS : Temel Giriş/Çıkış Sistemi anlamına gelir ve temel olarak önyükleyicinin yüklenmesinden sorumludur. Bilgisayar başlatıldığında, bellek ve sabit disk gibi temel donanımın düzgün çalıştığından emin olmak için bir “Açılışta Kendi Kendine Testi (Power On Self Test)” çalıştırır. Ardından, BIOS, sabit sürücünüzde önyükleyicinin bulunduğu bir bölüm olan birincil sabit sürücülerin Ana Önyükleme Kaydını (Master Boot Record) kontrol edecektir.
2.Bootloader : Çekirdeği bir dizi çekirdek parametresiyle RAM'e yükler.
3.Çekirdek : Çekirdeğin birincil işlevi aygıtları ve belleği başlatmaktır. Daha sonra, init işlemini yükler.
4.Init : Sisteminizdeki temel hizmetleri başlatmak ve durdurmaktan sorumludur.
Not : BIOS, Linux ile ilgili bir işlem olmamakla birlikte işletim sisteminizden bağımsız olarak gerçekleşen bir işlemdir.
Büyük Birleşik Önyükleyici Nedir?
GRUB, esas olarak, önyükleme yapmak istediğiniz işletim sistemini veya ortamı seçebileceğiniz bir seçenekler menüsü sunmaktadır. Ayrıca, Linux Çekirdeğinin yüklenmesinden sorumludur.
Not : GRUB yalnızca Linux işletim sistemlerine değil, Windows gibi diğer işletim sistemlerine de önyükleme yapmak için kullanabileceğiniz programdır.
Şu anda iki ana GRUB sürümü vardır.
1.GRUB Legacy : Bu sürüm, GRUB'un ilk versiyonudur ve ilk olarak 1995 yılında geliştirilmiştir.
2.GRUB 2 : Manjaro, Ubuntu, Fedora ve Red Hat Enterprise Linux (RHEL) gibi birçok ana Linux dağıtımı tarafından kullanılan GRUB'un en son sürümüdür. GRUB 2, GRUB Legacy’e göre daha iyi araçlar ve yapılandırma seçenekleri sunar.
GRUB dışında, Linux dağıtımları ayrıca Linux Loader (LILO), coreboot ve SYSLINUX gibi diğer önyükleyicileri de kullanır.
GRUB'un Rolü
Önyükleme yapacağınız işletim sistemini seçtiğinizde, GRUB seçilen çekirdeği yükleyecektir. GRUB, çekirdeğin nerede olduğunu ve kullanılacak diğer önemli parametreleri bilmek için çekirdek parametrelerini kullanır.
initrd : Başlangıç RAM diskini belirtmek için kullanılır.
BOOT_IMAGE : Linux çekirdek görüntüsünün konumudur.
root : Kök dosya sisteminin konumunu belirtir. Çekirdek tarafından, kritik hizmetleri yükleyen init'i bulmak için kullanılır.
ro : Dosya sistemini salt okunur (read-only) modda kurmaktan sorumludur.
quiet : Bilgisayarınız açılırken sisteme özgü bazı mesajları gizler.
splash : Sisteminiz açılırken açılış ekranı (splash screen)’nı görüntülemek için kullanılır.
GRUB seçenekleri menüsündeyken klavyenizdeki E tuşuna basarak çekirdek parametrelerini düzenleyebilirsiniz.
GRUB Önyükleyiciyi Yapılandırma
GRUB 2, önyükleyicinizi yapılandırmaya geldiğinde size çok fazla esneklik ve güç sağlar.
/ Boot / grub dizini adlı bir dosyayı içeren grub.cfg GRUB için ana yapılandırma dosyasıdır. Ancak, grub.cfg dosyasını doğrudan düzenlememeniz tavsiye edilir; bunun yerine /etc/default/grub dosyasını düzenlemeniz gerekir.
/etc/default/grub dosyasında değişiklik yaptığınızda, yaptığınız değişikliklerin grub.cfg dosyasına otomatik olarak yazılması için aşağıdaki komutu çalıştırmanız yeterli olacaktır.
sudo update-grub
Aşağıdaki komutu çalıştırarak GRUB ve bazı yapılandırma seçenekleri hakkında daha fazla bilgi edinebilirsiniz:
info -f grub
GRUB'u Linux'ta Özelleştirme
GRUB son derece güçlü ve esnek bir önyükleyicidir ve işletim sisteminizin çalışmasında çok önemli bir rol oynar. Kullanıcılar, GRUB açılış ekranının görünümü üzerinde tam kontrole sahiptir. Önyükleme ekranının arka plan görüntüsü de kolayca özelleştirilebilir.