Linux boot süreci detayları

CyberWolf

Astsubay Başçavuş
Admin
Katılım
23 Kasım 2025
Mesajlar
977
Reaksiyon puanı
63

BIOS/UEFI ve Açılış Sürecinin Başlangıcı​


Her Linux sistemi, tıpkı diğer işletim sistemleri gibi, bilgisayar açıldığında ilk olarak Donanım Yazılımı Arayüzü (BIOS veya daha modern sistemlerde UEFI) tarafından karşılanır. Bu aşamada, BIOS/UEFI temel donanım kontrolünü (POST – Power-On Self-Test) gerçekleştirir. Bellek, işlemci ve diğer kritik bileşenlerin düzgün çalışıp çalışmadığını kontrol eder. Her şey yolundaysa, sistem önyüklenebilir bir aygıt arayışına girer. Bu aygıt genellikle sabit disk, SSD veya bir USB sürücü olabilir. Aygıt bulunduğunda, BIOS/UEFI bu aygıtın ilk sektöründe yer alan önyükleme kaydını (MBR veya GPT durumunda EFI sistemi bölümü) okur ve kontrolü ona devreder. Bu, işletim sisteminin yüklenmesi için kritik bir ilk adımdır.

Önyükleyici (Bootloader) Devreye Girişi​


BIOS/UEFI'nin kontrolü devretmesinin ardından, Linux sistemlerinde genellikle GRUB (Grand Unified Bootloader) gibi bir önyükleyici devreye girer. GRUB, diskinizde birden fazla işletim sistemi kuruluysa size bir seçim menüsü sunabilir veya varsayılan olarak tanımlanmış Linux çekirdeğini otomatik olarak yüklemeye başlayabilir. Grub'un temel görevi, seçilen Linux çekirdeği görüntüsünü ve başlangıç RAM diski (initramfs) dosyasını belleğe yüklemektir. Önyükleyici, bu dosyaların dosya sisteminde nerede bulunduğunu bilir ve onları doğru bir şekilde RAM'e taşır. Bu, çekirdeğin donanımla etkileşime geçebilmesi için bir köprü görevi görür ve sistemin bir sonraki aşamaya geçişini sağlar.

Kernel Yüklemesi ve İlk Aşama​


Önyükleyici tarafından belleğe yüklenen Linux çekirdeği, artık kontrolü ele alır ve kendi açılış sürecini başlatır. İlk olarak, çekirdek sıkıştırılmış halden açılır ve sistemin temel donanımını (işlemci, bellek, çevre birimleri) tanımaya başlar. Bu aşamada, çekirdek tüm aygıt sürücülerini henüz yüklemez; sadece temel sistem işlevleri için gerekli olanları aktive eder. Başka bir deyişle, çekirdek çekirdek alanı adı verilen kendi yürütme ortamını kurar. Ayrıca, çekirdek parametreleri de bu aşamada işlenir. Bu parametreler, önyükleyici tarafından iletilir ve sistemin nasıl açılacağına dair önemli talimatlar içerir; örneğin, kök dosya sisteminin nerede bulunacağı gibi bilgiler.

Initramfs (Geçici Kök Dosya Sistemi)​


Kernel yüklendikten ve ilk aşamaları tamamladıktan sonra, gerçek kök dosya sistemine erişim sağlamak için initramfs (initial RAM filesystem) devreye girer. Initramfs, bellekte oluşturulan küçük, geçici bir kök dosya sistemidir. Temel amacı, gerçek kök dosya sisteminin bulunabilmesi ve bağlanabilmesi için gerekli olan sürücüleri (özellikle disk denetleyicisi ve dosya sistemi sürücüleri) sağlamaktır. Örneğin, eğer kök dosya sisteminiz RAID veya LVM gibi özel bir yapılandırmadaysa, bu sürücüler initramfs içinde bulunur. Initramfs, bu sürücüleri yükledikten sonra, gerçek kök dosya sistemini bağlar ve kontrolü bu dosya sistemi üzerindeki `/sbin/init` veya `systemd` gibi ilk kullanıcı alanı sürecine devreder.

Init veya Systemd: İlk Kullanıcı Alanı Süreci​


Initramfs görevini tamamlayıp gerçek kök dosya sistemini bağladığında, sistem artık ilk kullanıcı alanı sürecini başlatır. Geleneksel olarak bu süreç `init` (PID 1) idi, ancak modern Linux dağıtımlarında yerini genellikle `systemd` almıştır. `systemd`, sistemdeki diğer tüm süreçlerin ana babasıdır ve sistemin geri kalanını başlatmaktan sorumludur. Bu kritik süreç, tanımlanmış hizmetleri ve daemon'ları sırayla başlatır, sistemin çeşitli bileşenlerini yapılandırır ve açılış hedeflerini (targets) yönetir. Başka bir deyişle, `systemd` sistemi tamamen çalışır duruma getirmek için gerekli olan tüm adımları orkestra eder.

Hizmetlerin Başlatılması ve Hedefler (Targets/Runlevels)​


`Systemd` devreye girdikten sonra, sistemde tanımlı olan tüm temel hizmetleri ve servisleri (ağ, güvenlik duvarı, günlükleme vb.) yapılandırılmış sıraya göre başlatır. Bu aşama, sistemin ağa bağlanmasını, diğer bilgisayarlarla iletişim kurmasını ve kullanıcıların kullanabileceği uygulamaları çalıştırmasını sağlar. `Systemd` bağlamında bu aşamalar "hedefler" (targets) olarak adlandırılır. Örneğin, `multi-user.target`, ağ ve çoğu sistem servisi etkinleştirilmiş ancak henüz grafiksel bir kullanıcı arayüzü başlatılmamış durumu temsil ederken, `graphical.target` masaüstü ortamını da başlatır. Bu hedefler, sistemin farklı çalışma modlarını temsil eder ve açılış sırasında hangi servislerin başlatılacağını belirler.

Kullanıcı Girişi ve Masaüstü Ortamı​


Açılış sürecinin son aşamasında, tüm temel hizmetler ve hedefler başlatıldıktan sonra, sistem kullanıcı girişine hazır hale gelir. Eğer sistem metin tabanlı bir arayüzde (terminal) çalışacak şekilde yapılandırılmışsa, kullanıcıya bir giriş istemi (prompt) sunulur. Aksine, eğer `graphical.target` seçildiyse, bir görüntü yöneticisi (örneğin GDM, LightDM veya SDDM) başlatılır ve kullanıcıya grafiksel bir giriş ekranı sunar. Kullanıcı adını ve parolasını girdikten sonra, sistem kullanıcının oturumunu başlatır ve tercih ettiği masaüstü ortamını (GNOME, KDE Plasma, XFCE vb.) yükler. Sonuç olarak, bu aşamada kullanıcı sistemi tamamen kullanmaya başlayabilir ve uygulamalarını çalıştırabilir.
 
Geri
Üst Alt