Chapter 10

CONFIGURING BOOT PROCESS

Boot prosedure:

1) Firmware (your computer)

2) Boot device (your hard disk)

3) boot loader (in our case is "GRUB")

4) kernel

5) initramfs (initrd)

6) systemd

7) early state

8) services

9) shell (you can login)

linux ilə başlayan sətir kernelin yükləndiyi hissədir. Sondan rhgb quiet -i silsək boot prosesi zamanı baş verən hadisələri ekrandan oxuya bilərik.

grub faylını dəyişdirib compile edərək persistent grub config əldə etmək mümkündür:

vim /etc/default/grub
# bu faylda sonda yazılan "rhgb quiet" silərək baş verən hadisələri görmək mümkündür

Grub configi dəyişdikdən sonra compile etmək lazımdır. UEFİ vəya MBR partition olduğundan asılı olaraq işlədəcəyimiz əmrlər müxtəlifdir.

grub2-mkconfig -o /boot/grub2/grub.cfg
grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg

Sistemin EFI yoxsa MBR olduğunu yoxlamaqçün:

ls /sys/firmware/efi # əgər folder mövcuddursa efi-dir, deyilsə mbr-dır

lsblk | grep efi # əgər /boot/efi varsa efi-dir, yoxdursa MBR-dır

systemd targets

isolatable targetlərə nümunə:

  • emergency.target

  • rescue.target

  • multi-user.target

  • graphical.target

Aşağıdakı əmri icra edərək hansı target mod-da olduğumuzu görə bilərik:

systemctl list-dependencies

hazırda istifadə olunan targeti öyrənmək üçün:

systemctl get-default

yeni targeti rebootdan sonra apply etmək üçün:

systemctl set-default

# example:
systemctl set-default multi-user.target

Targetə anında keçid etmək üçün:

systemctl isolate multi-user.target
systemctl isolate graphical.target

Həmçinin boot menuda linux kernel sətrinin sonuna aşağıdakı yazını əlavə edərək target dəyişmək mümkündür:

systemd.unit=emergency.target

Emergency modda ikən grub-da dəyişikliklər etmək üçün:

# bunu edirik Çünki emergency moda-da write permissionumuz olmur filesystemə
mount -o remount,rw /

# bunu edirik çünki etməsək /boot qovluğu boş olur
mount -a

Emergency mode-dan çıxmaq üçün:

systemctl set-default multi-user.target

grub faylını yoxlayırıq ki orada emergency target qalmasın:

vim /etc/default/grub

Bundan sonra emergency-mode-da grub compile etməyə çalışsaq xəta verəəck:

grub2-mkconfig -o /boot/grub2/grub.cfg
# error: no such file or directory

Bu xətanı aradan qaldırmaq üçün multi-user.target-ə keçmək lazımdır:

grub2-mkconfig -o /boot/grub2/grub.cfg
systemctl set-default graphical.target
reboot

Last updated

Was this helpful?