Haqqımda Təcrübə Bacarıqlar Blog
Geri qayıdın

Boot prosesini 1 dəfəlik başa düş

Linux əməliyyat sisteminin yüklənməsi, öz təcrübəmdən, sadə dildə izah edirəm

Linux adminləri üçün müsahibələrdə tez-tez verilən məşhur bir sual var:

Linux-un boot prosesi necə işləyir?

Bu mövzu, əslində, çox praktikdir. Xüsusilə də VM miqrasiyası edəndə, server diskini dəyişəndə və ya sistem nəsə olub boot etməyəndə. Bu ardıcıllığı anlamadan problemi tapmaq çətin olur. Aşağıda mən bunu necə anlayıram və real işdə nələrlə qarşılaşmışam, onları danışacam.

BIOS və ya UEFI


Server və ya VM start aldığı anda idarəetmə ilk olaraq firmware-ə, yəni BIOS və ya UEFI-yə ötürülür

BIOS

MBR-i tapır, oradan da bootloader-i işə salır. Çox sadə mexanizmdir: MBR -> Bootloader -> Kernel.

UEFI

UEFI: müəyyən .efi fayllarını oxuyur, özündə boot entry-lər saxlayır və bu, həm rahatlıq yaradır, həm də bəzən problemlər.

Praktikadan bir nüans:

Bir hypervisor-dan digərinə VM köçürəndə, UEFI/BİOS fərqi çox zaman gözlənilməz xəta yaradır. VM əvvəlcə UEFI ilə yaradılıbsa, yeni hypervisor-da da eyni şəkildə konfiqurasiya etmək lazımdır. Dəfələrlə görmüşəm ki, disk sağlamdır, OS sağlamdır, amma UEFI mismatch olduğu üçün VM açılmır.

Sonra səhnəyə bootloader çıxır, adətən GRUB


Firmware işini bitirəndən sonra növbə bootloader-ə keçir. Linux sistemlərdə bunun 99%-i GRUB2 olur.

Nə iş görəcək:

  • menyunu göstərmək
  • kernel seçmək
  • kernel və initramfs-i yaddaşa yükləmək
Bəzən GRUB yüklənmir: məsələn, disk layout dəyişdirilib, RAID-də nəsə dəyişiklik ediblər və s. Bu zaman grub rescue rejimi çox kömək edir, manual kernel və root bölməsini göstərib sistemi qaldırmaq olur.
Bir dəfə GRUB yeni diski görmədiyi üçün sistemi yalnız manual şəkildə qaldıra bilmişdim.

RAID olan sistemlərdə vacib detal

Əgər mdadm RAID istifadə edirsinizsə, GRUB hər bir fiziki diskə ayrıca yazılmalıdır. RAID data-nı qoruyur, amma bootloader-i yox.

Bu səhvi yeni başlayanlar çox edir: bir disk ölür -> sistem boot etmir > "Axı RAID var?! " Cavab: GRUB RAID-in xaricindədir.

Kernel və initramfs: boot prosesinin ürəyi


Bootloader işi kernel-ə ötürəndə, əsas proses başlayır.

Kernel:

  • hardware-i initialize edir
  • initramfs-i RAM-a açır
  • root filesystem-ə qədər olan bütün "keçid hissəsi" ni hazırlayır

Initramfs nədir?

[b]Bu, RAM-da yaşayan kiçik müvəqqəti mini-Linux-dur:

  • disk controller driver-ləri
  • LVM/RAID dəstəyi
  • şəbəkə ilə boot üçün skriptlər
  • fsck və digər utilitilə
Initramfs
düzgün qurulmayıbsa, sistem root bölməsini tapa bilmir -> erkən mərhələdə ilişir.
Məsələn, kernel update zamanı sistem bir neçə saniyə "donur", bu, initramfs build prosesidir. Bu mərhələ yarımçıq qalsa, kernel-lə boot etmək mümkün olmur.

Bir dəfə serverdə kernel panic məhz yarımçıq initramfs səbəbindən olmuşdu, LiveCD ilə vəziyyəti düzəltmişdim.

Başqa klassik problem:

VM başqa hypervisor-a keçir -> yeni "hardware" -> initramfs-də uyğun driver yoxdur -> sistem açılmır. Çarə: initramfs-i yenidən build etmək.

PID 1 görünəndə, systemd start götürür

Initramfs işini bitirəndə əsas init prosesi (PID 1) işə düşür. Hal-hazırda əksər distrubutivlərdə bu systemd-dir.

Systemd:

  • servisləri paralel işə salır
  • fayl sistemlərini mount edir
  • şəbəkəni qaldırır
  • lazım olsa GUI və ya getty açır
Bu mərhələdə problemlər çox nadir hallarda olur, çünki artıq SSH işləyir və debug etmək mümkündür. Hansı unit-in ilişdiyini, hansı servisin start olmadığını asanlıqla görmək olur.
Bütün prosesi qısa şəkildə resume etsək:

BIOS/UEFI -> Bootloader -> Kernel -> Initramfs -> Systemd -> Servislər -> Login

Nəticə


Boot prosesini başa düşmək, sırf müsahibə sualı deyil, gündəlik işin bir hissəsidir.

Ən çox problem çıxan yerlər:


  • GRUB + RAID kombinasiyası
  • initramfs-də çatışmayan driver-lər
  • VM-lərdə UEFI/BİOS uyğunluğunun pozulması
Bu ardıcıllığın necə işlədiyini bildikdə, problemi harada axtarmaq lazım olduğunu dərhal anlamaqa başlayırsan

Building the future, one deployment at a time.

© 2026 All Rights Reserved | Made with and lots of coffee