Pagrindinis skirtingų Linux įkrovos proceso etapų vadovas
Kiekvieną kartą, kai įjungiate „Linux“ kompiuterį, jis pereina keletą etapų, kol galiausiai parodomas prisijungimo ekranas, kuriame raginama įvesti vartotojo vardą arba slaptažodį. Yra 4 skirtingi etapai, kuriuos kiekvienas „Linux“ platinimas praeina įprasto įkrovos procese.
Šiame vadove paryškinsime įvairius veiksmus, kurių ėmėsi Linux OS nuo jos įjungimo iki prisijungimo. Atminkite, kad šiame vadove atsižvelgiama tik į GRUB2 įkrovos įkroviklį ir systemd init, nes šiuo metu juos naudoja didžioji dauguma šiuolaikinių Linux platinimų.
Paleidimo procesą sudaro šie 4 žingsniai, kuriuos aptarsime išsamiau:
- BIOS vientisumo patikra (POST)
- Įkeliama įkrovos programa (GRUB2)
- Branduolio inicijavimas
- Paleidžiama systemd, visų procesų pirminė programa
1. BIOS vientisumo patikra (POST)
Įkrovos procesas paprastai inicijuojamas, kai vartotojas paspaudžia įjungimo mygtuką (jei kompiuteris jau buvo išjungtas) arba iš naujo paleidžia sistemą naudodamas GUI arba komandų eilutę.
Kai „Linux“ sistema įsijungia, įsijungia BIOS (pagrindinė įvesties išvesties sistema) ir atlieka įjungimo savitestą (POST). ). Tai vientisumo patikra, kuri atlieka daugybę diagnostinių patikrinimų.
POST tikrina komponentų, tokių kaip HDD arba SSD, klaviatūra, RAM<, aparatinės įrangos veikimą., USB prievadus ir bet kokią kitą aparatinę įrangą. Jei neaptinkamas koks nors aparatūros įrenginys arba sutrinka bet kurio įrenginio veikimas, pvz., sugadintas HDD arba SSD, ekrane pasirodo klaidos pranešimas, raginantis imtis veiksmų.
Kai kuriais atvejais pasigirsta pyptelėjimas, ypač jei trūksta RAM modulio. Tačiau, jei numatyta aparatinė įranga yra ir veikia taip, kaip tikėtasi, įkrovos procesas pereina į kitą etapą.
2. Įkrovos įkroviklis (GRUB2)
Kai POST bus baigtas ir pakrantė bus švari, BIOS patikrina MBR (Pagrindinis įkrovos įrašas). įkrovos įkrovos ir disko skaidymo informacija.
MBR yra 512 baitų kodas, esantis pirmame standžiojo disko sektoriuje, kuris paprastai yra /dev/sda
arba /dev/hda priklausomai nuo standžiojo disko architektūros. Tačiau atminkite, kad kartais MBR gali būti įdiegta „Linux“ Live USB arba DVD.
Linux sistemoje yra 3 pagrindiniai įkrovos tvarkyklių tipai: LILO, GRUB ir GRUB2. Įkrovos įkroviklis GRUB2 yra naujausias ir pagrindinis įkrovos įkroviklis šiuolaikiniuose Linux platinimuose ir informuoja apie mūsų sprendimą neįtraukti kitų dviejų, kurie laikui bėgant paseno.
GRUB2 reiškia GRand Unified Bootloader 2 versiją. Kai BIOS nustato grub2 įkrovos įkroviklį, ji paleidžia ir įkelia ją į pagrindinę atmintį ( >RAM).
Meniu grub2 galite atlikti keletą dalykų. Tai leidžia pasirinkti Linux branduolio versiją, kurią norite naudoti. Jei kelis kartus atnaujinote sistemą, galite matyti skirtingas branduolio versijas. Be to, tai suteikia galimybę redaguoti kai kuriuos branduolio parametrus paspaudus klaviatūros klavišų derinį.
Be to, naudojant dvigubos įkrovos sąranką, kai įdiegta keletas OS, grub meniu leidžia pasirinkti, kurią OS paleisti. Grub2 konfigūracijos failas yra /boot/grub2/grub2.cfg failas. Pagrindinis GRUB tikslas yra įkelti Linux branduolį į pagrindinę atmintį.
3. Branduolio inicijavimas
Branduolys yra bet kurios Linux sistemos pagrindas. Jis susieja kompiuterio aparatinę įrangą su pagrindiniais procesais. Branduolys valdo visus procesus jūsų Linux sistemoje. Kai pasirinktą „Linux“ branduolį įkelia įkrovos įkroviklis, jis turi savarankiškai ištraukti iš suglaudintos versijos prieš atlikdamas bet kokią užduotį. Savarankiškai išskleidus, pasirinktas branduolys prijungia šakninę failų sistemą ir inicijuoja /sbin/init programą, paprastai vadinamą init.
Init visada yra pirmoji vykdoma programa ir jai priskiriamas 1 proceso ID arba PID. Tai inicijavimo procesas, kuris sukuria įvairius demonus ir sujungia visus skaidinius, nurodytus /etc/ fstab failą.
Tada branduolys prijungia pradinį RAM diską (initrd), kuris yra laikina šakninė failų sistema, kol bus prijungta tikroji šakninė failų sistema. Visi branduoliai yra kataloge /boot
kartu su pradiniu RAM disko vaizdu.
4. Sistemos paleidimas
Branduolys galiausiai įkelia Systemd, kuris yra senojo SysV iniciatoriaus pakeitimas. Systemd yra visų „Linux“ procesų motina ir, be kita ko, valdo failų sistemų diegimą, paslaugų paleidimą ir sustabdymą, kad būtų galima paminėti tik keletą.
„Systemd“ naudoja failą /etc/systemd/system/default.target, kad nustatytų būseną arba tikslą, į kurį turėtų būti paleista „Linux“ sistema.
- Stalinio kompiuterio darbo stotyje (su GUI) numatytoji tikslinė vertė yra 5, o tai atitinka senojo SystemV iniciatoriaus 5 paleidimo lygį.
- Serveryje numatytasis tikslas yra multi-user.target, kuris atitinka SysV init 3 paleidimo lygį.
Štai sisteminių tikslų suskirstymas:
- poweroff.target (0 vykdymo lygis): išjunkite arba išjunkite sistemą.
- rescue.target (1 vykdymo lygis): paleidžiamas gelbėjimo apvalkalo seansas.
- multi-user.target (2, 3, 4 vykdymo lygis): sukonfigūruoja sistemą į negrafinę (konsolinę) kelių vartotojų sistemą.
- graphical.target (5 vykdymo lygis): nustatykite sistemą naudoti grafinę kelių vartotojų sąsają su tinklo paslaugomis.
- reboot.target (6 vykdymo lygis): iš naujo paleidžiama sistema.
Norėdami patikrinti dabartinį tikslą sistemoje, paleiskite komandą:
systemctl get-default
Galite pereiti iš vieno tikslo į kitą, terminale vykdydami šią komandą:
init runlevel-value
Pavyzdžiui, 3 init sukonfigūruoja sistemą į negrafinę būseną.
Komanda init 6 iš naujo paleidžia sistemą ir init 0 išjungia sistemą. Būtinai iškvieskite sudo komandą, kai norite perjungti į šiuos du objektus.
Įkrovos procesas baigiasi, kai systemd įkelia visus demonus ir nustato tikslinę arba vykdymo lygio reikšmę. Šiuo metu būsite paraginti įvesti vartotojo vardą ir slaptažodį, kuriuos naudodami įeisite į „Linux“ sistemą.