Hoşgeldin Misafir

Linux boot süreci yöntemleri

Stronger_Cracker

25 Tem 2022
6,396 Mesaj

Aktiflik

Seviye

Deneyim

TIM / GÖREV:
Linux işletim sisteminin başlatılması, karmaşık ancak son derece organize bir dizi adımdan oluşur. Kullanıcılar için sadece bir güç düğmesine basmak anlamına gelse de, arka planda donanımın algılanmasından uygulamaların hazır hale gelmesine kadar birçok kritik işlem gerçekleşir. Bu süreç, sistemin kararlılığını ve güvenliğini doğrudan etkiler. Bu nedenle, bir Linux sisteminin nasıl başlatıldığını anlamak, sorun giderme ve optimizasyon açısından büyük önem taşır.

BIOS/UEFI ve İlk Adım​


Herhangi bir bilgisayarın açılışındaki ilk durak, sistem donanımını başlatan ve kontrol eden Temel Giriş/Çıkış Sistemi (BIOS) veya daha modern muadili Birleşik Genişletilebilir Donanım Yazılımı Arayüzü (UEFI) yazılımıdır. BIOS veya UEFI, güç tuşuna basıldığında kendi dahili testlerini (POST - Power-On Self-Test) çalıştırır. Bu testler, RAM, işlemci, klavye gibi temel donanım bileşenlerinin doğru çalıştığını doğrular. Ek olarak, sistem donanımını başlatır ve önyükleme aygıtlarını sırasıyla arar. Sonuç olarak, işletim sistemini yükleyecek bir önyükleme kaynağı bulduğunda kontrolü ona devreder.

MBR/GPT ve Önyükleyici​


BIOS/UEFI, önyükleme aygıtını belirledikten sonra, depolama aygıtının ilk sektöründe yer alan Önyükleme Kaydı'nı (MBR - Master Boot Record) veya GUID Bölüm Tablosu'nu (GPT) okur. MBR, önyükleyici kodunu ve disk bölüm bilgilerini içerir. GPT ise MBR'ye göre daha yeni ve esnek bir yapıdır, daha büyük diskleri ve daha fazla bölümü destekler. Ek olarak, MBR veya GPT içeriğindeki önyükleyici kodu, gerçek Linux önyükleyicisi olan GRUB (Grand Unified Bootloader) veya LILO (Linux Loader) gibi programları çalıştırır. Bu önyükleyiciler, çekirdek yükleme sürecinin kritik ilk adımlarını atar.

GRUB ve Çekirdeğin Yüklenmesi​


GRUB, Linux sistemlerinde en yaygın kullanılan önyükleyicidir. Görevi, çekirdek görüntüsünü ve başlangıç ramdisk'ini (initramfs) belleğe yüklemektir. GRUB, kullanıcılara farklı çekirdek sürümlerini veya hatta farklı işletim sistemlerini seçme imkanı sunan bir menü gösterir. Bu esneklik, özellikle çoklu önyükleme ortamlarında ve sistem kurtarma senaryolarında oldukça değerlidir. GRUB, yapılandırma dosyalarını okuyarak hangi çekirdeği ve ilgili parametreleri yükleyeceğini bilir. Bu nedenle, doğru bir GRUB yapılandırması, sistemin sorunsuz bir şekilde başlatılması için hayati öneme sahiptir.

Initramfs ve İlk Kullanıcı Alanı Ortamı​


Çekirdek belleğe yüklendikten sonra, kontrolü initramfs (initial RAM filesystem) adı verilen geçici bir dosya sistemine devreder. Initramfs, gerçek kök dosya sistemi monte edilmeden önce ihtiyaç duyulan temel sürücüleri ve yardımcı programları içerir. Örneğin, depolama denetleyicileri, RAID veya LVM gibi özel dosya sistemleri için gereken modüller bu aşamada yüklenir. Başka bir deyişle, çekirdeğin donanımla iletişim kurabilmesi ve gerçek kök dosya sistemini bulup monte edebilmesi için gerekli olan her şey initramfs içinde bulunur. Bu geçici ortam, sistemin esnekliğini önemli ölçüde artırır.

Çekirdek Başlatma ve Kök Dosya Sistemi​


Initramfs'deki işlemler tamamlandığında, çekirdek nihayet gerçek kök dosya sistemini (/) monte eder. Bu, çekirdeğin tüm sistem kaynaklarını yönetmeye ve temel hizmetleri başlatmaya hazır olduğu anlamına gelir. Bu aşamada, çekirdek temel sistem çağrılarını, süreç yönetimini, bellek yönetimini ve aygıt sürücüsü arayüzlerini aktif hale getirir. Sonuç olarak, sistem artık kullanıcı alanında çalışacak uygulamaları ve hizmetleri başlatmaya hazırdır. Çekirdek, bu kritik geçişi gerçekleştirdikten sonra, kontrolü ana başlatma sürecine devreder.

Init Sistemi (Systemd/SysVinit) ve Hizmetler​


Kök dosya sistemi başarıyla monte edildikten sonra, çekirdek kontrolü init sistemine devreder. Günümüzde Linux dağıtımlarının çoğu Systemd kullanırken, bazıları hala SysVinit gibi eski sistemleri tercih edebilir. Init sisteminin temel görevi, sistemin geri kalanını başlatmak ve tüm hizmetleri (ağ, veritabanı, web sunucusu vb.) uygun sırayla çalıştırmaktır. Ek olarak, init sistemi, sistemin varsayılan çalışma seviyesini veya hedefini belirler ve bu hedefe ulaşmak için gerekli tüm bağımlılıkları ve hizmetleri etkinleştirir. Bu nedenle, init sistemi, sistemin kullanıma hazır hale gelmesinde merkezi bir rol oynar.

Kullanıcı Ortamı ve Sistemin Hazırlanması​


Tüm temel hizmetler ve arka plan süreçleri başlatıldıktan sonra, init sistemi veya ilgili süreçler kullanıcı oturumunu hazırlar. Bu, grafik arayüz (masaüstü ortamı), terminal oturumları ve oturum açma yöneticisi (örneğin GDM, SDDM, LightDM) gibi bileşenlerin yüklenmesini içerir. Kullanıcı kimlik doğrulaması yapılır ve ardından seçilen masaüstü ortamı veya kabuk başlatılır. Sonuç olarak, tüm bu adımlar tamamlandığında, sistem tamamen kullanıma hazır hale gelir ve kullanıcı etkileşimi için bekler. Bu süreç, kullanıcının sorunsuz bir başlangıç deneyimi yaşamasını sağlar.
 

THS-AI

THS-AI

THS YAPAY ZEKA
Turkhacks Kurumsal
20 Haz 2025
11,255 Mesaj

Aktiflik

Seviye

Deneyim

TIM / GÖREV:
Linux boot sürecinde en yaygın yöntemler BIOS veya UEFI kullanarak başlatma, Bootloader (GRUB) ile başlatma ve init sistemiyle (systemd veya SysVinit) devam etme yöntemleridir. Bu süreçleri optimize etmek için Bootloader ayarlarını düzenleyerek başlangıçta gereksiz servisleri kapatabilir ve SSD kullanımıyla hızlandırabilirsiniz.