Kaip gauti sistemos įkrovos laiką Linux OS. Linux įkrovos žingsniai

Pradžia / Neįsijungia

Šiame straipsnyje apžvelgsime atsisiuntimo procesą operacinė sistema Linux. Pažiūrėkime atidžiau, kokius etapus kompiuteris ir operacinė sistema pereina įkrovos proceso metu. Straipsnis daugiausia skirtas naujiems vartotojams, kurie ką tik pradėjo susipažinti su Linux. Suprasti, kaip veikia „Linux“ įkrovos procesas, svarbu šalinant galimas įkrovos proceso problemas, jei tokių iškyla.

Iš karto po kompiuterio paleidimo būsite paraginti paspausti specialų mygtuką, kad paleistumėte BIOS meniu, jei to nepadarysite, sistema ir toliau bus paleista. Toliau apžvelgsime, kas vyksta kiekviename „Linux“ įkrovos etape.

BIOS (pagrindinė įvesties išvesties sistema) – tai programinė įranga, iš anksto integruota į mikroschemų rinkinį pagrindinė plokštė. BIOS paleidžia kompiuterį ir nuskaito visą jo aparatinę įrangą, patikrindama, ar yra ir veikia tokie įrenginiai kaip kietasis diskas, CD-ROM, RAM. Šiuo metu prasideda Linux OS įkrovos procesas.

Tada BIOS ieško MBR (Master Boot Record), kuris paprastai yra pirmame sektoriuje kietasis diskas ir paleidžia ten įrašytą pirmojo laipsnio įkrovos įkroviklį, pavyzdžiui, Grub arba Lilo. BIOS paruošia MBR įkrovos programą, įkelia visus duomenis į RAM ir ją vykdo.

MBR užima pirmuosius 512 baitų kietajame diske. Ten yra parašyta informacija apie operacinės sistemos įkroviklį, pvz.: Linux, Unix, WIndows.

Nors MBR užima vietos diske, ši sritis nepriklauso jokiam skaidiniui. MBR adresas paprastai yra takelis 0, cilindras 0. Ši vieta skirta įkrovos programoms. Tai apima ne tik vykdomąją įkrovos programą, bet ir disko skaidinių lentelę.

BIOS nuskaito MBR, suranda pirmos pakopos įkrovos įkroviklį, tada nuskaito skaidinių lentelę ir suranda antrojo etapo įkrovos įkroviklį skaidinyje, kuris pažymėtas kaip paleidžiamas.

Krautuvas

Jei suskirstysite „Linux“ įkrovos procesą į etapus, tai bus antrasis etapas. Pirmoji įkrovos įkrovos dalis, esanti MBR, įkeliama į RAM.

Tada iš įkrovos tvarkyklės įkeliami antrosios įkrovos dalies failai sunkus skyrius diskas. Pavyzdžiui, Grub arba Lilo. Šis padalijimas yra būtinas, nes visas įkrovos įkrovos kodas netelpa į 512 baitų.

Paleidus Grub įkrovos įkroviklį, jis nuskaito savo konfigūracijos failą ir ragina vartotoją pasirinkti operacinę sistemą, kurią norite paleisti.

Kiekvieno elemento konfigūracijos faile yra branduolys, kurį reikia įkelti. Paprastai branduoliai yra aplanke /boot. Tada Grub įkelia norimą branduolio vmlinuz versiją

Branduolio paruošimas

Įkėlimas prasideda čia Linux branduoliai. Grubas rezervuoja vietą RAM Initrd atvaizdui, tada įkelia tą vaizdą ten. Šiame paveikslėlyje yra pradinė failų sistema, moduliai ir priemonės, reikalingos ankstyvam įkėlimui, pavyzdžiui, dirbant su Btrfs arba šifruotu skaidiniu. Tada įkrovos programa paruošia branduolį paleisti ir įkelia reikiamus modulius, kad būtų galima pradėti inicijavimo procesą.

Linux sistemoje dauguma patentuotų tvarkyklių yra supakuoti kaip moduliai ir talpinami įkrovos diskas initrd.img. Tokiu būdu, kai branduolys paleidžiamas, visi reikalingi moduliai jau yra initrd.

Branduoliui įkėlus viską, ko reikia, ir baigus pradinę inicijavimą, Linux branduolys laikomas baigtu ir pradedamas sistemos inicijavimo procesas, vadinamasis init procesas, jį galima nustatyti rankiniu būdu, pavyzdžiui, naudojant init branduolio parinktį .

Branduolio inicijavimas

Branduolio inicijavimas apima šiuos veiksmus:

  • Procesoriaus komponentų, tokių kaip MMU, inicijavimas
  • Planuoklio inicijavimas (PID 0)
  • Montavimas failų sistema skaitymo ir rašymo režimu
  • Pradėti inicijavimo procesą (PID 1)

Inicijavimo proceso metu branduolys atlieka šias užduotis:

  • Paleiskite pagrindinę sistemą ir bendrą išteklių tvarkyklę (RAM, procesorius, standusis diskas)
  • Pradedamas inicijavimo procesas (/sbin/init)

Inicijavimo sistema

Būtent šiuo metu „Linux“ įkrovos procesas yra labiausiai linkęs į klaidas. Branduoliui perdavus valdymą į inicijavimo sistemą, sistema pradeda ruoštis darbui ir paleisti visas reikalingas paslaugas – registravimą, sistemos pranešimų siuntimą, tinklo sąranką, tinklo failų sistemų paruošimą, garso nustatymą, vietinių failų sistemų ir kitų sistemos komponentų montavimą. Įjungta šiuo metu Dažniausiai naudojama viena iš dviejų populiariausių inicijavimo sistemų – SysVinit arba Systemd.

Atsisiuntimo procesas kiekvienu atveju skiriasi, tačiau esmė ta pati.

SysVinit pirmiausia paleidžia /sbin/init programą, tada nuskaito /etc/inittab parinkčių failą, kad nustatytų norimą numatytąjį vykdymo lygį. Tai yra „Linux“ įkrovos lygiai:

  • 0 - išjungimas
  • 1 – vieno vartotojo režimas
  • 2 – kelių žaidėjų režimas be tinklo
  • 3 – Visas režimas
  • 4 – nenaudota
  • 5 – paleiskite X11

Linux įkrovos lygius taip pat galima perjungti rankiniu būdu naudojant komandą telinit. Numatytasis paprastai yra 5 lygis.

Tada vykdomas /etc/rc.d/rc.sysinit scenarijus, taip pat visi scenarijai iš /etc/rc.d/rcx aplanko, kur x yra vykdymo lygio numeris. Pavyzdžiui, jei paleidžiame 5 vykdymo lygiu, bus vykdomi visi scenarijai iš /etc/rc.d/rc5.d aplanko.

Paleidimo scenarijų pavadinimai prasideda raide S, o užbaigimo scenarijai prasideda raide K. Ar pažiūrėję į šią struktūrą jau suprantate, kaip automatinio paleidimo paslaugos veikia Linux sistemoje? Dabar galite pridėti scenarijų prie paleidimo rankiniu būdu, tiesiog sukurdami simbolinę nuorodą norimame aplanke.

Atlikus visus šiuos veiksmus, sistemai tereikia paleisti visas virtualias TTY pultus ir prisijungimo tvarkyklę, pvz., XDM arba SDDM.

„Systemd“ įkėlimo procesas čia šiek tiek skiriasi, skirtingai nei ankstesnėje versijoje, naudojami ne scenarijai, o specialūs konfigūracijos failai - vienetai. Tai išsprendžia daugybę problemų, tokių kaip perkeliamumas, taip pat prideda naujų funkcijų, tokių kaip priklausomybės ir lygiagretus įkėlimas.

Tačiau atsisiuntimo proceso esmė ta pati, paleidžiamos tos pačios paslaugos. Vietoj paleidimo lygių naudojami specialūs vienetai – .target. Vieneto pavadinime yra vykdymo lygio numeris ir žodis runlevel. Pvz.: runlevel0.target – išjungti ir tt Šie vienetai kartu su jais traukia visas reikalingas paslaugas. normalus veikimas sistemos.

Tiesą sakant, yra dvi įvykių sekos, kurių reikia norint paleisti „Linux“ kompiuterį ir padaryti jį tinkamu naudoti: paleidimas ir paleidimas. Įkrovos seka prasideda, kai kompiuteris įjungiamas, ir baigiasi, kai inicijuojamas branduolys ir paleidžiama sistema. Tada paleisties procesas užbaigia „Linux“ kompiuterio prijungimo prie užduotį darbinė būklė.

Apskritai Linux atsisiuntimo ir paleidimo procesą suprasti gana lengva. Jį sudaro šie veiksmai, kurie bus išsamiau aprašyti tolesniuose skyriuose.

BIOS POST;
- įkrovos programa (GRUB2);
- branduolio inicijavimas;
- paleisti systemd, pagrindinį visų procesų komponentą.

Atkreipkite dėmesį, kad šis straipsnis apima GRUB2 ir systemd, nes jie yra dabartinė įkrovos ir inicijavimo sistema daugeliui pagrindinių platinimų. Kiti tokių programų variantai buvo naudojami anksčiau ir vis dar naudojami kai kuriuose platinimuose.

Įkrovos procesas

Atsisiuntimo procesą galima pradėti vienu iš kelių būdų. Pirma, jei maitinimas išjungtas, jį įjungus prasidės įkrovos procesas. Jei kompiuteris jau veikia, vietinis vartotojasįskaitant šaknį arba eilinis vartotojas, gali programiškai inicijuoti įkrovos seką naudodami GUI arba komandinę eilutę, kad iš naujo paleistumėte kompiuterį. Pirmiausia kompiuteris bus išjungtas, o tada paleistas iš naujo.

BIOS POST

Pirmasis „Linux“ įkrovos proceso žingsnis iš tikrųjų neturi nieko bendra su „Linux“. Tai yra aparatinė įkrovos proceso dalis ir yra vienoda bet kuriai operacinei sistemai. Kai kompiuteris tiekiamas maitinimu, jis pradeda POST (įjungimo) procedūrą. Savęs testas), kuri yra BIOS (Basic I/O System) dalis.

Kai IBM sukūrė pirmąjį kompiuterį, dar 1981 m., BIOS buvo sukurta aparatinės įrangos komponentams inicijuoti. POST yra BIOS dalis, kurios užduotis yra užtikrinti tinkamą aparatinės įrangos veikimą. Jei POST neveikia tinkamai, kompiuteris gali būti nenaudojamas ir įkrovos procesas nebus tęsiamas.

BIOS POST tikrina pagrindines funkcijas aparatūra, tada išduoda BIOS pertraukimą INT 13H, kuris suranda įkrovos sektorius visuose prijungtuose įkrovos įrenginiuose. Pirmasis rastas įkrovos sektorius su galiojančiu įkrovos įrašu įkeliamas į RAM, o tada valdymas perkeliamas į kodą, įkeltą iš įkrovos sektorius.

Įkrovos sektorius iš tikrųjų yra pirmasis įkrovos įkrovos etapas. Yra trys įkrovos įkrovikliai, kuriuos naudoja dauguma Linux platinimų: GRUB, GRUB2 ir LILO. GRUB2 yra moderniausias ir šiandien naudojamas daug dažniau nei senesnės versijos.

GRUB2

GRUB2 reiškia "GRAND Unified Bootloader Version 2" ir yra pagrindinis daugelio Linux platinimų įkrovos įkroviklis. GRUB2 yra programa, kuri daro kompiuterį pakankamai protingą, kad surastų operacinės sistemos branduolį ir įkeltų jį į atmintį. Kadangi GRUB yra lengviau parašyti ir pasakyti nei GRUB2, šiame dokumente vartosiu terminą GRUB, bet nurodysiu GRUB2, jei nenurodyta kitaip.

GRUB buvo sukurtas taip, kad būtų suderinamas su multiboot specifikacija, kuri leidžia GRUB paleisti kelis Linux versijos ir kitos nemokamos operacinės sistemos; jis taip pat gali paleisti patentuotų operacinių sistemų įkrovos įrašą.

GRUB taip pat leidžia vartotojui pasirinkti paleisti vieną iš kelių skirtingų branduolių bet kuriam Linux platinimui. Tai leidžia paleisti iš ankstesnė versija branduolys, jei atnaujinta versija neveikia tinkamai arba yra nesuderinama su dalimi programinė įranga. GRUB galima konfigūruoti naudojant /boot/grub/grub.conf failą.

GRUB1 dabar laikomas pasenusiu ir daugelyje šiuolaikinių platinimų buvo pakeistas GRUB2, kuris yra GRUB1 perrašymas. „Red Hat“ pagrįsti paskirstymai buvo atnaujinti į GRUB2, pradedant nuo „Fedora 15“ ir „CentOS/RHEL 7“. GRUB2 suteikia tas pačias funkcijas kaip ir GRUB1, tačiau GRUB2 taip pat suteikia daugiau lankstumo prieš įkrovą. GRUB2 sukonfigūruotas naudojant /boot/grub2/grub.cfg failą.

Pagrindinė GRUB funkcija yra įkelti Linux branduolį į atmintį ir jį paleisti. Abi GRUB versijos veikia iš esmės vienodai, o procesas apima tuos pačius tris veiksmus, bet aš naudosiu GRUB2. GRUB arba GRUB2 nustatymas ir GRUB2 komandų naudojimas nepatenka į šio straipsnio taikymo sritį.

Nors GRUB2 oficialiai nenaudoja etapų žymėjimo trims GRUB2 įkrovos etapams, patogu juos nurodyti tokiu būdu, ką aš ir padarysiu šiame straipsnyje.

1 etapas

Kaip minėta POST BIOS skyriuje, POST pabaigoje BIOS ieško prijungtų diskų įkrovos įvedimas, paprastai esantis pagrindiniame įkrovos įraše (MBR), įkelia pirmąjį, esantį RAM, ir tada pradeda vykdyti įkrovos įrašą. Įkrovos kodas, ty 1 GRUB2 etapas, yra labai mažas, nes jis turi tilpti į pirmąjį 512 baitų sektorių standžiajame diske kartu su skaidinių lentele. Bendras vietos kiekis, skirtas tikram įkrovos kodui klasikiniame bendrai naudojamame MBR, yra 446 baitai. 1 etapo 446 baitų failas vadinamas boot.img ir jame nėra skaidinių lentelės, kuri atskirai pridedama prie įkrovos įrašo.

Kadangi įkrovos įrašas turi būti toks mažas, jis nėra labai protingas ir nesupranta failų sistemos struktūros. Todėl vienintelis 1 etapo tikslas yra rasti ir įkelti 1.5 etapą. Norėdami tai padaryti, GRUB 1.5 etapas turi būti tarp paties įkrovos įrašo ir pirmojo disko skaidinio. Įkėlus 1.5 GRUB etapą į RAM, 1 etapas valdymą perkelia į 1.5 etapą.

1.5 etapas

Kaip minėta aukščiau, GRUB 1.5 etapas turėtų būti tarp paties įkrovos įrašo ir pirmojo disko skaidinio. Dėl techninių priežasčių ši erdvė istoriškai nebuvo naudojama. Pirmasis standžiojo disko skaidinys prasideda 63 sektoriuje, o MBR yra 0 sektoriuje, o tai palieka 62 512 baitų sektorius – 31 744 baitus, kuriuose saugomas core.img failas, kuris yra 1.5 GRUB pakopa. core.img failas yra 25389 baitų dydžio, todėl tarp MBR ir pirmojo disko skaidinio yra daug vietos laisvos vietos už jo saugojimą.

Dėl didesnio kodo kiekio, kuris gali būti naudojamas 1.5 etape, jame gali būti kelios įprastų failų sistemų, tokių kaip EXT ir kitos Linux failų sistemos, FAT ir NTFS, tvarkyklės. GRUB2 core.img yra daug sudėtingesnis ir protingesnis, palyginti su senesniu 1,5 GRUB1 etapu. Tai reiškia, kad GRUB2 2 etapas gali būti standartinėje EXT failų sistemoje, bet negali būti loginiame tome. Taigi, standartinė 2 pakopos failų vieta yra /boot failų sistema, būtent /boot/grub2.

Atminkite, kad /boot katalogas turi būti failų sistemoje, kurią palaiko GRUB. Ne visos failų sistemos tam tinkamos. 1.5 etapo funkcija yra įkelti failų sistemos tvarkykles, reikalingas 2 pakopos failų paieškai /boot failų sistemoje ir įkelti reikiamas tvarkykles.

2 etapas

Visi GRUB 2 etapo failai yra /boot/grub2 kataloge ir keliuose jo pakatalogiuose. GRUB2 neturi vaizdo failo, pavyzdžiui, 1 ir 2 žingsnių. Vietoj to, jį daugiausia sudaro branduolio moduliai, kurie prireikus įkeliami iš /boot/grub2/ i386-pc katalogo.

GRUB2 2 etapo funkcija yra rasti ir įkelti Linux branduolį į RAM ir perjungti kompiuterio valdymą į branduolį. Branduolys ir su juo susiję failai yra /boot kataloge. Branduolio failus galima atpažinti, nes jų visų pavadinimai prasideda vmlinuz. Galite peržiūrėti /boot katalogo turinį, kad pamatytumėte sistemoje įdiegtus branduolius.

GRUB2, kaip ir GRUB1, palaiko paleidimą iš vieno iš Linux branduolių. Red Hat paketų tvarkyklė DNF palaiko kelių branduolio versijų saugojimą, taigi, jei kyla problemų su pačiu branduoliu nauja versija, galite atsisiųsti daugiau sena versija branduoliai. Pagal numatytuosius nustatymus GRUB suteikia įdiegtų branduolių meniu prieš įkrovą, įskaitant saugaus įkrovos parinktį ir, jei sukonfigūruota, atkūrimo parinktį.

2 etapas GRUB2 įkelia pasirinktą branduolį į atmintį ir perduoda kompiuterio valdymą sistemos branduoliui.

Šerdis

Siekiant sutaupyti vietos, visi branduoliai saugomi savaime išsiskleidžiančiame archyvo formate. Branduoliai yra /boot kataloge kartu su originaliu RAM disko vaizdu ir standžiojo disko įrenginio žemėlapiais.

Kai pasirinktas branduolys įkeliamas į atmintį ir pradedamas vykdyti, jis pirmiausia turi išarchyvuoti save, kad galėtų vykdyti naudingo darbo. Kai branduolys išstumiamas, jis įkelia systemd, kuris pakeitė seną SysV init programą, ir perjungia valdymą į ją.

Tai atsisiuntimo proceso pabaiga. Šiuo metu veikia Linux branduolys ir systemd, bet negali atlikti jokių produktyvių užduočių galutiniam vartotojui, nes niekas neveikia.

Paleidimo procesas

Paleisties procesas vyksta po įkrovos proceso ir jūsų „Linux“ kompiuteris įjungiamas į darbo būseną, kad jį būtų galima naudoti produktyviam darbui.

sisteminis

systemd yra visų procesų motina ir yra atsakinga už tai, kad „Linux“ sistema būtų tokia, kad ją būtų galima paleisti. Kai kurios jo funkcijos yra daug platesnės nei sena programa„init“ yra skirti valdyti įvairius veikiančios „Linux“ sistemos aspektus, įskaitant failų sistemų kūrimą ir kasdieniams sistemos paslaugų paleidimą bei valdymą. Linux veikia. Bet kuri iš sisteminių užduočių, nesusijusių su paleidimo seka, nepatenka į šio straipsnio taikymo sritį.

Pirma, systemd prijungia failų sistemas, nurodytas /etc/fstab, įskaitant visus apsikeitimo failus ar skaidinius. Šiuo metu ji gali pasiekti konfigūracijos failus, esančius /etc, įskaitant savo. Jis naudoja savo konfigūracijos failą /etc/systemd/system/default.target, kad nustatytų būseną (taikinį), į kurią ji turėtų paleisti sistemą. Failas default.target yra tik simbolinė nuoroda į tikrąjį tikslinį failą. Darbo vietai arba staliniai kompiuteriai tai paprastai bus grafinis.target, kuris yra lygus 5 paleidimo lygiui senojoje SystemV pradinėje sistemoje. Numatytajame serveryje tai greičiausiai bus multi-user.target, kuris panašus į 3 vykdymo lygį sistemoje SystemV. Emergency.target yra panašus į vieno žaidėjo režimą.

Atminkite, kad tikslai ir paslaugos yra sisteminiai vienetai.

Žemiau esančioje 1 lentelėje pateikiamas sisteminių taikinių palyginimas su senesniais SystemV vykdymo lygiais. Tikslinius slapyvardžius teikia systemd, kad būtų galima suderinti atgal. Tiksliniai slapyvardžiai leidžia scenarijams ir daugeliui sistemos administratorių, tokių kaip aš, naudoti SystemV komandas, tokias kaip init 3, kad pakeistų vykdymo lygius. Žinoma, SystemV komandos yra persiunčiamos į systemd interpretacijai ir vykdymui.

SystemV lygis Tikslai sisteminiai tiksliniai slapyvardžiai Aprašymas
- sustabdyti.taikinys - Išjungia sistemą neišjungus maitinimo.
0 maitinimo išjungimas.taikinys runlevel0.target Išjungiama sistema išjungus maitinimą.
S avarinis.taikinys - Vieno vartotojo režimas. Paslaugos neveikia; failų sistemos nėra prijungtos. Tai yra pagrindinis veikimo lygis, kai pagrindinėje konsolėje veikia tik avarinis apvalkalas, leidžiantis vartotojui sąveikauti su sistema.
1 gelbėjimas.taikinys runlevel1.target Pagrindinė sistema, apimanti prijungtas failų sistemas tik su pagrindine vykdomos paslaugos ir avarinis apvalkalas pagrindinėje konsolėje.
2 - runlevel2.target Kelių vartotojų režimas be NFS, bet veikiant kitoms konsolės paslaugoms
3 kelių vartotojų.taikinys runlevel3.target Visos paslaugos veikia, bet galima tik komandų eilutės sąsaja.
4 - runlevel4.target Nenaudotas
5 grafinis.taikinys runlevel5.target Kelių vartotojų režimas su GUI
6 paleisti iš naujo.target runlevel6.target
- default.target - Šis tikslas visada yra simbolinė nuoroda į multi-user.target arba graphical.target. sistema visada naudoja default.target sistemai paleisti. default.should niekada neturėtų nurodyti halt.target, poweroff.target arba reboot.target.

1 lentelė: SystemV vykdymo lygių palyginimas su systemd tikslais.

Kiekvienas tikslas turi priklausomybių rinkinį, aprašytą konfigūracijos faile. systemd vykdo reikiamas priklausomybes. Šios priklausomybės yra paslaugos, reikalingos norint paleisti „Linux“ pagrindinį kompiuterį tam tikru funkcionalumo lygiu. Kai visos priklausomybės, išvardytos tiksliniuose konfigūracijos failuose, atsisiunčiamos ir paleidžiamos, sistema veikia tuo tiksliniu lygiu.

systemd taip pat žiūri į senus SystemV init katalogus, kad sužinotų, ar ten yra paleisties failų. Jei jie yra, systemd naudoja juos kaip konfigūracijos failus, kad paleistų tuose failuose aprašytas paslaugas. Pasenusi tinklo paslauga yra geras pavyzdys vienas iš tų atvejų, kai Fedora vis dar naudoja SystemV paleisties failus.

Žemiau esantis 1 paveikslas nukopijuotas tiesiai iš įkrovos vadovo puslapio. Jis parodo bendra sekaįvykiai sistemos paleidimo metu ir pagrindiniai jų užsakymo reikalavimai, siekiant užtikrinti sėkmingą paleidimą.

Tikslai sysinit.target ir basic.target gali būti laikomi valdymo taškai paleidimo proceso metu. Nors vienas iš systemd projektavimo tikslų buvo leisti sistemos paslaugoms veikti vienu metu, vis dar yra tam tikrų paslaugų ir funkcinių tikslų, kuriuos reikia paleisti prieš paleidžiant kitas paslaugas ir taikinius. Šių kontrolinių punktų negalima pereiti, kol nebus įvykdytos visos reikalingos paslaugos ir tikslai.

Taigi sysinit.target pasiekiamas, kai baigiami visi komponentai, nuo kurių jis priklauso. Failų sistemų montavimas, puslapių failų nustatymas, udev paleidimas, atsitiktinių skaičių generatoriaus įdiegimas, žemo lygio paslaugų paleidimas ir kriptografinių paslaugų nustatymas, jei viena ar daugiau failų sistemų yra užšifruotos, turi būti baigtos, tačiau sysinit.target viduje šios užduotys gali būti vykdomos lygiagrečiai.

Sysinit.target paleidžia visas žemo lygio paslaugas ir komponentus, reikalingus minimaliam sistemos funkcionalumui ir kurių prireiks norint pereiti į basic.target.

Local-fs-pre.target | gelbėjimas.taikinys v (įvairūs tvirtinimai ir (įvairūs apsikeitimo (įvairios cryptsetup fsck paslaugos...) įrenginiai...) įrenginiai...) (įvairūs žemo lygio (įvairūs žemo lygio | | | paslaugos: udevd, API VFS prijungimai: v v v tmpfiles , atsitiktinė mqueue, configfs, local-fs.target swap.target cryptsetup.target seed, sysctl, ...) debugfs, ...) | | | | | avarinis.taikinys\_________________|_____________________ | _______________________|____________________/ \|/ v sysinit.target | kelių vartotojų.taikinys _________________________________________/|\_____________________________________________ / | | | \ | | | | | grafinis.taikinys

v v | v v (įvairūs (įvairūs | (įvairūs gelbėjimo.tarnybos laikmačiai...) keliai...) | lizdai...) |

Įvykdžius sysinit.target, systemd paleis basic.target, paleisdama visus komponentus, reikalingus jai vykdyti. basic.target suteikia tam tikrų papildomų funkcijų paleisdama komponentus, kurių reikia kitam taikiniui. Tai apima konfigūravimo aspektus, pvz., kelių į įvairius vykdomuosius katalogus, ryšio lizdus ir laikmačius.

Galiausiai galima inicijuoti vartotojo lygio taikinius, kelių vartotojų.target arba grafinį.target. Atkreipkite dėmesį, kad kelių žaidėjų režimas turi būti pasiektas prieš įgyvendinant grafikos priklausomybes.

1 paveiksle pabraukti taikiniai yra įprasti paleidimo taikiniai. Pasiekus vieną iš šių tikslų, paleidimas baigtas. Jei numatytasis nustatymas yra multi-user.target, konsolėje turėtumėte matyti teksto režimo prisijungimą. Jei numatytasis yra graphical.target, turėtumėte matyti grafinį prisijungimo ekraną; Konkretus prisijungimo ekranas, kurį pamatysite, priklausys nuo numatytosios seansų tvarkyklės, kurią naudojate.

Problemos

Neseniai turėjau pakeisti numatytąjį branduolį Linux kompiuteryje, kuriame veikia GRUB2. Pastebėjau, kad kai kurios komandos neveikia taip, kaip tikėtasi, arba galbūt jas naudojau netinkamai. Dar nesu tikras dėl priežasčių, reikia atlikti dar kelis tyrimus.

Komanda grub2-set-default tinkamai nenustatė numatytojo branduolio indekso /etc/default/grub, todėl alternatyvus branduolys, kurio norėjau, nebūtų įkeltas. Tada rankiniu būdu pakeičiau /etc/default/grub GRUB_DEFAULT=save į GRUB_DEFAULT=2, kur 2 yra įdiegto branduolio, kurį norėjau paleisti, indeksas. Tada paleidau komandą grub2-mkconfig> /boot/grub2/grub.cfg, kad sukurčiau naują grub konfigūracijos failą. Šis sprendimas veikė taip, kaip tikėjausi, ir paleido alternatyvų branduolį.

Išvada

GRUB2 ir systemd yra pagrindiniai komponentai daugumos šiuolaikinių Linux platinimų įkrovos ir paleidimo fazėse. Šie du komponentai veikia kartu, pirmiausia įkeldami branduolį, o tada paleisdami visas sistemos paslaugas, reikalingas visiškai veikiančiai Linux sistemai sukurti.

Nors manau, kad GRUB2 ir systemd yra sudėtingesni nei jų pirmtakai, juos gana lengva išmokti ir valdyti. Man puslapiuose yra daug informacijos apie systemd, o freedesktop.org turi pilna komplektacija Systemd man puslapiai prieinami internete.

Suskirstykime „Linux“ OS įkrovos procesą į devynis veiksmus, taikomus beveik bet kuriai „Linux“ OS konfigūracijai:

  1. Pirmasis įkėlimo etapas yra kompiuterio BOIS ar kitos aparatinės ir programinės įrangos nuskaitymas iš kietojo disko ar kito MBR. įkrovos įrenginys(pvz., kompaktinis diskas, diskelis arba tinklo įkrovos įrenginys ir kt.).
  2. Įkrovos įkroviklis pradeda veikti. Linux x86 architektūroje paprastai naudoja LILO arba GRUB. Kai kurios senesnės sistemos gali naudoti „loadlin“, kad būtų paleistas per antrinį DOS skaidinį. IN Maitinimo sistemos PC® tai gali būti BootX arba yaboot. iš viso krautuvas yra paprasta programa, kuri vis dėlto žino, kur ieškoti Linux branduolio, gali pasirinkti, kurį paleisti iš kelių branduolio versijų arba net pasirinkti kitą operacinę sistemą tame pačiame kompiuteryje.
  3. Įdiegta šakninė failų sistema. Kai kuriais atvejais pradinė šakninė failų sistema laikinai sujungiama iš, pavyzdžiui, įkrovos įkroviklio inicijuoto RAM disko turinio, kad būtų galima įkelti specialias tvarkykles ir modulius, kurių gali prireikti paleisti tikrąją šakninę failų sistemą.

    Dabar mes turime šakninę failų sistemą, galime pradėti faktinį inicijavimą.

  4. Paleidžiamas inicijavimo procesas, visų kitų Linux OS procesų protėvis.
  5. Nuskaitomas failo /etc/inittab turinys, siekiant nustatyti tolesnę atsisiuntimo eigą. Ypač svarbu, kas parašyta /etc/inittab failo eilutėje, kuri nustato sistemos paleidimo lygį (taigi ir vėlesnius įkrovos etapus).

    Iš tiesų, viską, kas vyksta po šio taško, visiškai lemia failo /etc/inittab turinys. Tiesą sakant, scenarijus ir kiti veikiantys įrankiai priklauso nuo atitinkamų parametrų, tačiau iš esmės galite visiškai pakeisti /etc/inittab, kad galėtumėte kontroliuoti, kaip įvairūs įrankiai veikia taip, kaip norite.

    Vienas iš failo /etc/inittab nustatymų yra ypač svarbus. Tai eilutė, panaši į:

    id:5:initdefault:

    Paprastai jis yra šalia failo pradžios ir nustato sistemos paleidimo lygį. Vykdymo lygis nustato, kokie veiksmai bus atliekami likusiose failo /etc/inittab instrukcijose.

    Kas nutinka, kai vykdomas scenarijus /etc/inittab? Ir ypač, kokie failai ir katalogai dalyvauja procese?

  6. Nepriklausomas vykdymo lygio inicijavimas. Yra keletas veiksmų, kurie bus atliekami nepriklausomai nuo nustatyto paleidimo lygio. Šie veiksmai yra pažymėti /etc/inittab eilutėmis, panašiomis į:

    # Sistemos inicijavimas.
    si::sysinit:/etc/rc.d/rc.sysinit

    Kai kuriose „Linux“ sistemose (daugiausia „Debian“ pagrindu veikiančiose sistemose) greičiausiai pamatysite eilutes, panašias į šias:

    si::sysinit:/etc/init.d/rcS

    Pastaruoju atveju failas /etc/init.d/rcS yra tiesiog scenarijus, kuris po vieną paleidžia /etc/rcS.d/??* scenarijus. Kita vertus, jei jūsų sistema naudoja /etc/rc.d/rc.sysinit, pakanka vieno šiame faile esančio ilgo scenarijaus inicijavimui atlikti.

  7. Priklausomai nuo vykdymo lygio inicijavimas. Tiesą sakant, galite apibrėžti tiek vykdymo lygio veiklų, kiek norite, ir kiekviena veikla gali būti priskirta vienam ar keliems vykdymo lygiams. Paprastai /etc/inittab bus tokios eilutės kaip:

    l0:0:laukti:/etc/rc.d/rc 0
    # ...
    l5:5:laukti:/etc/rc.d/rc 5
    l6:6:laukti:/etc/rc.d/rc 6

    Savo ruožtu scenarijus /etc/rc.d/rc valdys visus failus, pavadintus /etc/rc$1.d/??*. Toliau pateiktame pavyzdyje galite matyti, kad tam tikroje sistemoje, pradedant nuo 5 vykdymo lygio, bus vykdomi šie veiksmai (tvarka):

    /etc/rc5.d/K15postgresql
    /etc/rc5.d/S01switchprofile
    /etc/rc5.d/S05harddrake
    ...
    /etc/rc5.d/S55sshd
    ...
    /etc/rc5.d/S99linuxconf
    /etc/rc5.d/S99local

    Failai, prasidedantys raide „K“ arba „k“, yra žudymo scenarijus, jie užbaigia procesus arba organizuoja savo veiksmus (pasekmes). Failai, prasidedantys raide „S“ arba „s“, yra paleisties scenarijus, jie pradeda naujus procesus arba paruošia sistemą veikti tuo paleidimo lygiu. Dauguma jų yra apvalkalo scenarijai ir dauguma jų bus nuorodos (dažnai į /etc/init.d/).

    Nors Linux sistema paleidžiamas tam tikru vykdymo lygiu, norite prisijungti prie sistemos kaip vartotojas. Siekiant užtikrinti, kad autorizacija būtų sėkminga, naudojama getty programa. Platinimų, tokių kaip agetty, mgetty ir mingetty, kūrėjai naudoja daugybę „getty“ programų tipų. Bet jie visi daro tą patį.

  8. Prisijunkite su kvietimu. Pažįstamas /etc/inittab paprastai veikia „getty“ viename ar keliuose virtualiuose ekranuose ir tai daro keliuose vykdymo lygiuose. Lygiai apibrėžiami tokiomis eilutėmis kaip:

    # Vykdykite gettys standartiniais paleidimo lygiais
    1:2345:respawn:/sbin/mingetty tty1
    2:2345:respawn:/sbin/mingetty tty2
    3:2345:respawn:/sbin/mingetty tty3
    4:2345:respawn:/sbin/mingetty tty4
    5:2345:respawn:/sbin/mingetty tty5
    6:2345:respawn:/sbin/mingetty tty6

    Skaičius pradžioje nurodo, kuriame virtualiame terminale veiks getty programa; Kiti keli skaičiai yra paleidimo lygiai, kuriuose tai įvyks (pavyzdžiui, 2, 3, 4 ir 5 lygių bėgimas).

Šie veiksmai inicijuoja papildomų paslaugų paleidimą, įėjimą į grafinę aplinką, vartotojo sąsajos nustatymų atkūrimą ar kitą labiau suasmenintą informaciją, kuri nepatenka į šios mokymo programos taikymo sritį.

Vykdymo lygio sąvoka yra šiek tiek savavališka, ji nėra įrašyta į Linux branduolį. Tikrieji vykdymo lygiai yra susieti su skaičių rinkiniu, kad galėtumėte nustatyti (arba pakeisti esamą) numatytąjį vykdymo lygį pasirinkdami skaičių nuo 0 iki 6. Pagal susitarimą kiekvienam vykdymo lygio numeriui priskiriama tokia reikšmė:


Sąrašas 1. Vykdymo lygiai
# Numatytasis vykdymo lygis. „Mandrake Linux“ naudojami paleidimo lygiai yra: # 0 - Sustabdymas (NENAUDOKITE šio numatytųjų) # 1 - Vieno vartotojo režimas # 2 - Daugiafunkcis režimas be NFS (tas pats kaip 3, jei neturite tinklo) # 3 - Visiškas kelių naudotojų režimas Nr. 4 – Nenaudojamas Nr. 5 – X11 #6 – Paleisti iš naujo (NENAUDOKITE init default į tai)

Galima pastebėti, kad ši taisyklė naudojama „Mandrake Linux“ paskirstyme, tačiau dauguma platinimų naudoja tą pačią konvenciją. Gali pasirodyti, kad teksto ar įterptųjų platinimų kai kurie vykdymo lygiai nenaudojami, tačiau jie vis tiek rezervuos tuos pačius numerius.

Pavyzdžiuose matėte daug /etc/inittab eilučių, bet ką jos tiksliai reiškia? Kiekviena eilutė turi tokį formatą:

id:runlevels:action:process

ID laukas yra trumpa konfigūracijos eilutės santrumpa. (1–4 raidės naujausios versijos init ; 1–2 senesniuose). Runlevels laukas jau buvo aptartas. Kitas veiksmo laukas nurodo veiksmą, kurį atliko eilutė. Kai kurie veiksmai gali būti „ypatingi“, pavyzdžiui:

ca::ctrlaltdel:/sbin/shutdown -t3 -r dabar

Ši eilutė nustato Ctrl-Alt-Delete klavišų sekos veiksmą (neatsižvelgiant į vykdymo lygį). Tačiau dauguma veiksmų tiesiog pradeda atitinkamus procesus. Dalinis veiksmų sąrašas apima:

  • respawn: procesas bus paleistas iš naujo, kai tik jis baigsis (kaip ir „getty“ atveju).
  • palaukti: procesas bus pradėtas vieną kartą, kai įvedamas nurodytas vykdymo lygis, ir init lauks, kol jis bus baigtas.
  • vieną kartą: procesas bus vykdomas vieną kartą, kai bus įvestas nurodytas vykdymo lygis.
  • įkrovimas: procesas bus vykdomas sistemos įkrovos metu (bet po sysinit). Paleidimo lygis neturi reikšmės.

Sistemos paleidimo ir įkrovos proceso nustatymas

Prieš kelerius metus programa LILO pirmiausia buvo naudojama Linux x86 sistemose paleisti. Pavadinimas LILO yra "LINux LOader" trumpinys. Šiais laikais populiaresnė programa vadinama GRUB (GRand Unified Bootloader). Ne x86 sistemose naudojami skirtingi įkrovos įkrovikliai, tačiau jie visi sukonfigūruoti panašiai kaip LILO ir GRUB.

Nors jų konfigūracijos sintaksė skiriasi, LILO ir GRUB iš esmės atlieka tą pačią užduotį. Iš esmės kiekvienas iš jų suteikia galimybę pasirinkti operacinę sistemą (įskaitant galbūt kelis Linux branduolius) ir įkelia pasirinktą OS branduolį į kompiuterio atmintį. Abi programos leidžia perduoti argumentus „Linux“ branduoliui, ir abi gali būti sukonfigūruotos taip, kad tame pačiame kompiuteryje būtų paleistas ne „Linux“ OS.

LILO arba GRUB (arba kita įkrovos programa) yra pagrindinio standžiojo disko MBR (Master Boot Record), kurį automatiškai paleidžia sistemos BIOS. LILO turi apribojimų įkelti specialią žaliavą sunkus sektorius diskas. GRUB įkrovos programa yra sudėtingesnė ir atpažįsta įvairias failų sistemas, tokias kaip ext2/3, ReiserFS, VFAT arba UFS. Tai reiškia, kad GRUB nereikia perrašyti MBR kiekvieną kartą, kai pasikeičia konfigūracijos failas (kaip tai daro LILO).

LILO įkrovos įkroviklis sukonfigūruojamas naudojant /etc/lilo.conf failo turinį. Norėdami sužinoti daugiau apie LILO konfigūravimo parinktis, skaitykite lilo.conf vadovo puslapius. Bendrą elgesio pobūdį lemia keli pradiniai parametrai. Pavyzdžiui, tikriausiai pamatysite boot=/dev/hda ar kažką panašaus. Ši komanda įdiegia įkrovos įkroviklį pirminio standžiojo disko MBR. IDE diskas išvaizda. LILO taip pat galite įdiegti konkrečiame skaidinyje, paprastai kai naudojate kitą pagrindinį įkrovos įkroviklį. Pavyzdžiui, boot=/dev/sda3 įdiegia LILO trečiajame pirmojo SCSI disko skaidinyje. Kiti parametrai nustato

Atminkite, kad atlikę pataisymus faile /etc/lilo.conf, turite paleisti LILO, kad iš tikrųjų įdiegtumėte naują įkrovos sektorių, kuris naudojamas įkrovos metu. Lengva pamiršti nustatyti naujus parametrus, bet pati įkrovos programa negalės nuskaityti naujos konfigūracijos, nebent bus užrašyti tikrieji sektorių adresai (kuriuos LILO atpažįsta vykdydamas).

Jei naudojamas LILO, linijos yra ypač svarbios tipo vaizdas= o gal ir kita= jei galima rinktis tarp Linux ir kitų operacinių sistemų. Pavyzdyje /etc/lilo.conf gali būti:


Sąrašas 2. LILO konfigūracijos pavyzdys
image=/boot/bzImage-2.7.4 label="eksperimentinis" image=/boot/vmlinuz label="linux" initrd=/boot/initrd.img append="devfs=mount acpi=off tylus" vga=788 read- tik other=/dev/hda3 label=dos

Ši konfigūracija leidžia pasirinkti arba 2.7.4 branduolį, kuris yra kuriamas, arba stabilų branduolį (toliau deklaruojamas kaip paleisties RAM diskas (initrd) įkrovos proceso metu). Taip pat galite pasirinkti DOS, kuri yra trečiajame skaidinyje pirminis IDE diskas.

Neabejotinas GRUB pranašumas yra tas, kad jo nereikia diegti iš naujo kiekvieną kartą pakeitus įkrovos parinktis. Žinoma, vis tiek reikia pirmą kartą įdiegti GRUB, paprastai naudojant tokią komandą kaip grub-install /dev/hda . Paprastai platinimas tai padaro už jus diegimo proceso metu, todėl jūs negalite to padaryti patys.


Sąrašas 3. GRUB konfigūracijos pavyzdys
skirtasis laikas 5 spalva juoda/geltona geltona/juoda numatytasis 0 slaptažodis slaptažodis pavadinimas Linux branduolys (hd0,1)/boot/vmlinuz root=/dev/hda2 ramus vga=788 acpi=off initrd (hd0,1)/boot/initrd.img pavadinimas eksperimentinis branduolys (hd0,1)/boot/bzImage-2.7.4 root=/dev/hda2 ramus pavadinimas dos root (hd0,4) makeactive grandininis krautuvas +1

Tiek LILO, tiek GRUB leidžia perduoti specialius parametrus jūsų pasirinktam branduoliui. Jei naudojate LILO, galite perduoti parinktis įkrovos raginimui, pridėdami jas prie pasirinkto branduolio. Pavyzdžiui, įprastoms įkrovos parinktims galite įvesti:

LILO: linux ether=9.0x300.0xd0000 root=/dev/ha2 vga=791 acpi=on

Ši linija perduoda specialius parametrus Ethernet moduliui, nurodo šakninį skaidinį, pasirenka vaizdo režimą ir kt. Žinoma, ne visa tai patogu, nes turite tiksliai žinoti tinkamas šių parametrų reikšmes ir mokėti jas teisingai įvesti.

Ypač svarbus yra parametras, keičiantis įkrovos įkrovos sistemos paleidimo lygį. Pavyzdžiui, sistemos atkūrimo tikslais norite paleisti sistemą vieno vartotojo režimu. Tai atliekama taip:

LILO: eksperimentinis singlas

Kita speciali parinktis yra argumentas init=, leidžiantis kaip pagrindinį procesą naudoti kitas programas nei init. Avarinio režimo parinktys galėtų būti init=/bin/sh , kuri bent jau leistų turėti komandinė eilutė(Linux apvalkalas), jei init visiškai neveikia.

Su GRUB įkrovos įkrovikliu turite dar daugiau lankstumo. Tiesą sakant, GRUB yra komandinės eilutės apvalkalas ir suteikia vartotojui pagrindines apvalkalo funkcijas. GRUB leidžia ne tik pakeisti pagrindinę įkrovos įkroviklio konfigūraciją, bet net skaityti failų sistemas. Norėdami sukonfigūruoti įkrovos parinktis, GRUB komandų eilutėje paspauskite „e“, tada pridėkite parametrus (pavyzdžiui, vykdymo lygio numerį arba „single“ raktinį žodį, kaip LILO). Visi kiti įkrovos eilutės argumentai, kuriuos galite įvesti naudodami LILO, gali būti naudojami GRUB komandinėje eilutėje.

Norėdami suprasti savo parinktis, galite atidaryti GRUB komandų eilutę. Pavyzdžiui, tarkime, kad jūsų /etc/inittab failas yra prastai sukonfigūruotas ir norite jį ištirti prieš paleisdami. Galite įvesti:

grub>cat (hd0,2)/etc/inittab

Tai leistų iš anksto peržiūrėti inicijavimo failą nepaleidžiant operacinės sistemos. Jei ten būtų klaida, būtų galima paleisti į vieno vartotojo režimą ir ją ištaisyti.

Kai suprasite „Linux“ paleidimo veiksmus po branduolio įkrovos (kitaip tariant, inicijavimo procesą ir viską, ką jis iškviečia), taip pat suprasite, kaip juos redaguoti. Iš esmės visa konfigūracija atliekama redaguojant /etc/inittab failą ir įvairius scenarijus /etc/rc?.d/ kataloge.

Pavyzdžiui, neseniai man reikėjo sukonfigūruoti vaizdo BIOS „Debian“ pagrindu veikiančiame „Linux“ nešiojamame kompiuteryje naudojant trečiųjų šalių sprendimus. Jei jis nebuvo paleistas prieš pradedant X11s, mano XOrg tvarkyklė nenustatys tinkamų vaizdo režimų. Kai išsiaiškinau, kokia yra problema, sprendimas buvo toks paprastas, kaip sukurti /etc/rcS.d/S56-resolution.sh scenarijų. Kitaip tariant, kiekvieną kartą, kai sistema paleidžiama, paleidau papildomą scenarijų.

Atminkite, kad įsitikinau, kad šis scenarijus buvo paleistas anksčiau nei /etc/rcS.d/S70xorg-common dėl paprastos taisyklės, kad scenarijus vykdomas abėcėlės tvarka (jei norėčiau, kad mano scenarijus būtų paleistas vėliau, galėjau iškviesti S98 skiriamąją gebą .sh vietoj /etc/rcS.d/S56-resolution.sh). Galbūt šį scenarijų įdėčiau tik į /etc/rc5.d/ katalogą, kad jis veiktų, kai veikia X11, bet galiu rankiniu būdu paleisti startx iš kito paleidimo lygio.

Visi nustatymai inicijavimo proceso metu yra atviri redaguoti tiesiai failų sistemoje; beveik viską galima pataisyti naudojant tekstinius scenarijus.

Failų sistemos atkūrimas

Puikus Linux dalykas sistemos priežiūros požiūriu yra tai, kad viskas yra failas. Žinoma, karts nuo karto kyla klausimas , kuriame failas, kuris gyvas. Tačiau paprastai Linux atkūrimas reiškia pagrindinių failų sistemos paslaugų, tokių kaip cp, mv, rm ir teksto redaktorius tipas vi. Tokie įrankiai kaip grep, awk ir bash yra naudingi norint automatizuoti šiuos veiksmus; arba aukštesniu lygiu, perl arba python. Tačiau šioje pamokoje mes nesiekiame tyrinėti failų tvarkymo.

Darant prielaidą, kad žinote, kaip redaguoti ir tvarkyti failus, pažeistoje sistemoje paveiktų failų iš viso nebus galima naudoti.

Jūsų geriausias draugas atkuriant sugadintą failų sistemą fsck.

Fsck komanda iš tikrųjų yra tik komandos for pradžia didelis kiekis kiti fsck.* įrankiai yra fsck.ext2, fsck.ext3 arba fsck.reiser. Galite aiškiai nustatyti tipą naudodami parinktį -t, tačiau fsck stengsis tai išsiaiškinti pati. Norėdami gauti daugiau informacijos, skaitykite fsck arba fsck.* žinyno puslapį. išsamią informaciją. Svarbiausias dalykas, kurį turite žinoti, yra tai, kad kai naudojate argumentą -a, programa bandys ištaisyti visas rastas klaidas.

Nesumontuotą failų sistemą galite patikrinti nurodydami įrenginio, kuriame ji yra, vietą. Pavyzdžiui, įveskite fsck /dev/hda8, kad patikrintumėte, ar nėra nenaudojamo skaidinio. Taip pat galite patikrinti šakninę failų sistemą įvesdami fsck /home , bet paprastai tai darykite tik tuo atveju, jei failų sistema jau yra prijungta tik skaitymui, o ne skaitymui ir rašymui.

Vienas iš pagrindinių Linux sistemų privalumų yra vartotojo valdymo lankstumas montuojant ir atjungiant failų sistemas. Skirtingai nuo „Windows“ ir kai kurių kitų operacinių sistemų, skaidinių vietos automatiškai neprisega „Linux“ branduolio, bet yra prijungtos prie šakninės failų sistemos hierarchijos naudojant „mount“ komandą. Be to,įvairių tipų

failų sistemos (net skirtinguose įrenginiuose) gali būti montuojamos toje pačioje hierarchijoje. Galite atjungti konkretų skaidinį naudodami umount komandą, priskirti bet kokį prijungimo tašką (pavyzdžiui, /home) arba įrenginio adresą (pavyzdžiui, /dev/hda7).

Kai failų sistema atkuriama, galimybė valdyti prijungimo taškus leidžia analizuoti skaidinių būseną naudojant fsck ar kitus įrankius, nerizikuojant dar labiau sugadinti jau pažeistą failų sistemą. Failų sistemą taip pat galite prijungti įprastai naudodami įvairias parinktis; svarbiausieji prijungia failų sistemą tik skaitymui, naudodami vieną iš -r arba -o ro sinonimų.

Pavyzdžiui, galbūt norėsite pakeisti vieno vartotojo katalogo vietą kitu, nes skaidinys pažeistas, arba tiesiog norite padidinti vietos diske arba perkelti į greitesnį diską. Šį pakeitimą galima atlikti naudojant:
# umount /home # old /dev/hda7 home dir
# mount -t xfs /dev/sda1 /home # naujas SCSI diskas naudojant XFS

# mount -t ext3 /dev/sda2 /tmp # taip pat įdėkite /tmp į SCSI


Atkūrimui, sistemos atnaujinimui ir specialiems tikslams naudinga turėti galimybę savo nuožiūra prijungti ir atjungti failų sistemas. Tačiau kasdieniam darbui bus patogu, kai reikiamas konkretus tvirtinimo elementų rinkinys būtų atliekamas automatiškai kiekvieną kartą, kai sistema paleidžiama. Prijungimo taškus valdote įrašydami reikiamas konfigūracijos eilutes /etc/fstab faile. Įprasta konfigūracija gali atrodyti taip:
Sąrašas 4. Konfigūracijos pavyzdys /etc/fstab

/dev/hda7 / ext3 numatytieji nustatymai 1 1 nėra /dev/pts devpts mode=0620 0 0 /dev/hda9 /home ext3 numatytieji 1 2 nėra /mnt/cdrom supermount dev=/dev/hdc,fs=auto,ro,- -,iocharset=iso8859-1,codepage=850,umask=0 0 0 nėra /mnt/floppy supermount dev=/dev/fd0,fs=auto,--,iocharset=iso8859-1,sync,codepage=850,umask =0 0 0 nėra /proc proc numatytieji 0 0 /dev/hda8 swap apsikeitimo numatytieji 0 0 Turbūt pati pirminė ir tipiškiausia užduotis- Taip užtikrinama, kad operacinė sistema būtų tinkamai paleidžiama.

Kad tai padarytų, administratoriui būtina aiškiai suprasti sistemos paleidimo principus ir įvairius šio proceso etapus.

Reikia pasakyti, kad užduotys pašalinti įvairius gedimus kraunant sistemą dažnai randamos įvairiuose sertifikavimo egzaminuose OS srityse.

Pirmas žingsnis įjungus kompiuterį yra paleisti specialų paleisties kodą, kuris pateikiamas pagrindinės įvesties/išvesties sistemos (BIOS) pavidalu. BIOS sistema Yra žinoma beveik visa lygintuvo konfigūracija. Yra informacija, iš kurio įrenginio reikia nuskaityti pirmuosius 512 baitų (MBR).

Būtent MBR (Master Boot Record) yra saugoma pirminė įkrovos programa (1 etapas), kurioje yra informacija apie tai, kurioje disko vietoje yra antrinė įkrovos programa (2 etapas), kuri įkelia pačią operacinę sistemą.

Toks krautuvas pas mus konkretus pavyzdys yra GRUB (Grand Unified Boot Loader). Taip pat yra tarpinis etapas (vadinamasis etapas 1.5), kuris padeda OS įkrovos programai nustatyti specialius failų sistemos parametrus. Ši tvarka naudojama, jei GRUB įkrovos programa nebuvo įdiegta tiesiai į MBR.

Perėmus valdymą, GRUB parodo operacinių sistemų sąrašą („Linux“ / „Windows“ ir skirtingos versijos Linux branduoliai), jei yra. Kitu atveju valdymas perduodamas GRUB komandų eilutei.

Tarkime, kad viskas vyksta taip, kaip turėtų, ir mes pasirinkome mums reikalingą operacinę sistemą (arba branduolio versiją). Tokiu atveju GRUB pereina prie mėgstamo dalyko – pačios operacinės sistemos įkėlimo.

Visa informacija apie paleidimo proceso eigą rodoma ekrane (jei branduolio įkrovos parinktyse nėra parametro tylus ), taip pat į žurnalo failą /var/log/dmesg. Jį galite peržiūrėti tiesiogiai arba naudodami įrankį dmesg.

Remiantis paslaugų informacijos išvestimi, galima padaryti išvadas apie techninės ir programinės įrangos parametrus, tokius kaip OS branduolio versijos, RAM kiekis, procesorių, standžiųjų diskų ir atitinkamų skaidinių skaičius ir charakteristikos, tinklo plokštės, apsikeitimo failais ir daug daugiau.

Šios informacijos analizė, jei neįmanoma įkelti OS, gali atskleisti iškilusią problemą, todėl šis failas laikomas gana svarbiu trikčių šalinimui.

Kai įkeliamas sistemos branduolys, atliekama pagrindinė reikiamų įrenginių, LVM ir RAID posistemių bei initrd RAM disko konfigūracija, leidžianti įkelti reikiamas tvarkykles.

Kiti procesų įkėlimo veiksmai labai skiriasi priklausomai nuo OS versijos. RHEL5 naudoja tradicinį SysV paslaugų įkėlimo procesą. RHEL6 jau turi dalinį procesų įkėlimo lygiagretavimą ir pagal poreikį, o ne visus iš eilės. Naujose RHEL versijose (nuo 3.0 branduolio versijos) procesas toliau optimizuojamas naudojant systemd programą, kaip ir Fedora nuo 15 versijos. Šiuo atveju naudojamas asinchroninis darbo režimas, kuris pagreitina OS įkėlimą.

Perdavęs valdymą į pradinį procesą, branduolys pereina į specialų režimą ir priima skambučius iš visų procesų per specialią universalią sistemos skambučių sąsają. Šiuo metu „Linux“ atsisiuntimas gali būti laikomas baigtu.

Jums taip pat patiks:

Operacinė sistema Linux Paskaitų kursas. Pamoka „Linux“ CVE-2015-0235 trūkumo taisymas

Linux: Pilnas vadovas Kolisnichenko Denisas Nikolajevičius

1.8. Pirma paleisti Linux

1.8. Pirmasis „Linux“ paleidimas

Jei prisijungimui pasirinkote grafinį režimą (arba montuotojas pasirinko jį pats nieko neklausęs), tuomet pamatysite grafinį ekraną su lauku įvesti vardą ir slaptažodį. Prisijunkite prie sistemos (geriausia tokiu vardu, kurį nustatėte paprastam vartotojui; root naudokite tik tuo atveju, jei dar neturite įprastų paskyrų), ir pamatysite lango aplinkos, kurią nustatėte kaip numatytąją aplinką, darbalaukį, kuris atrodo gana panašus į Windows darbalaukį.

Kaip tai įmanoma, girdėjote, kad tikri Linux vartotojai dirba komandinės eilutės aplinkoje? Dabar suraskime komandų eilutę.

Jūs žinote, kad konsolė arba terminalas (skirta asmeninis kompiuterisŠios sąvokos yra sinonimai) vadinami įvesties-išvesties įrenginiais, skirtais palaikyti ryšį tarp sistemos ir vartotojo, tai yra, klaviatūros ir monitoriaus. Į UNIX panašiose sistemose egzistuoja virtualių pultų koncepcija – konsolės, kurios paeiliui fiziškai užima tą patį monitorių ir klaviatūrą. Kiekvienas iš jų gali atidaryti atskirą vartotojo sesiją, paleisti savo programas, apskritai tai yra beveik nepriklausomos viena nuo kitos skaičiavimo sistemos.

Dauguma „Linux“ platinimų pagal numatytuosius nustatymus palaiko šešias teksto pagrindu sukurtas virtualias konsoles, o septintoji yra grafinė. Štai kur tu esi. Norėdami perjungti iš jo į pirmąją teksto konsolę, paspauskite klavišų kombinaciją Ctrl+Alt+F1 (šeštoje – Ctrl+Alt+F6).

Atsiliepiant į programos kvietimą prisijungti:įveskite root ir paspauskite<Ввод>. Tada įveskite slaptažodį ir prasidės teksto konsolės sesija.

Informaciją apie įrenginio tinklo pavadinimą, OS versiją ir architektūrą galima gauti naudojant komandą uname -a.

Jeigu sąskaitą Paprastam vartotojui jo dar neturite, laikas jį įsigyti. Įveskite komandą

#useradd< имя >

Jei tau būtų atsakyta „komand nerasta“, tada ši komanda jūsų sistemoje vadinama adduser.

#passwd< имя >

Dabar galite prisijungti nauju vardu kitoje virtualioje konsolėje. Norėdami perjungti iš teksto pulto į kitą teksto pultą, paspauskite Alt+Fn kombinaciją, kur n yra skaičius nuo 1 iki 6. Vėl pamatysite raginimą prisijungti:.

Ar prisiregistravote? Atkreipkite dėmesį į kvietimo eilutę. Konsolėje, kurioje prisijungėte kaip root, jis baigiasi simboliu #, o bet kuriam įprastam vartotojui - simboliu $. Be šio simbolio, raginimą paprastai sudaro vartotojo vardas, sistemos pavadinimas ir dabartinis katalogas, kurį galima pakeisti, kai žinote, kaip tai padaryti. Kituose pavyzdžiuose eilutės, prasidedančios simboliu # arba, nurodys įvedamą komandą, o eilutės be tokio simbolio – jos pranešimus.

Dabar įsitikinkite patys, kad „Linux“ tikrai yra daugiafunkcinė ir kelių vartotojų sistema, tai yra, skirtingai nei „Windows“, keli vartotojai gali dirbti vienu metu. Paklauskite, kas šiuo metu dirba sistemoje, įvesdami komandą who.

Pamatysite kažką panašaus:

šaknis tty1<дата и время начала сеанса root>

ivanas tty2<дата и время начала сеанса ivan>

šaknis: 0<дата и время начала сеанса root>

<на графической консоли>

ttyN yra virtualus teksto pulto numeris.

Jei pasiklydote ir norite sužinoti, kokią konsolę šiuo metu naudojate, paleiskite komandą tty. Jei pamiršote, kokiu vardu prisijungėte dabartinėje konsolėje, įveskite komandą whoami. Komanda w parodys ne tik šiuo metu veikiančius vartotojus, bet ir jų vykdomas užduotis.

Galite slinkti per ekraną naudodami klavišų kombinacijas Shift + PgUp ir Shift + PgDn.

Norėdami nukopijuoti tekstą į komandinę eilutę, naudokite pelę: vilkdami pelę, laikant nuspaudę kairįjį mygtuką, pasirenkamas fragmentas, spustelėkite dešinysis mygtukasįterpia jį dabartinėje žymeklio vietoje bet kurioje virtualioje teksto konsolėje.

Jei norite dirbti kito vartotojo vardu, neišeidami iš šios konsolės, įveskite su<имя>. Pagal numatytuosius nustatymus vardas yra root. Paprastai to reikia norint greitai atlikti tam tikrus administracinius veiksmus. Grįžkite į darbą savo vardu naudodami komandą exit.

Norėdami grįžti į grafinę konsolę, paspauskite Alt + F7.

Grafiniame režime taip pat galite ne tik spustelėti piktogramas, bet ir įvesti komandas. Norėdami tai padaryti, paleiskite virtualų terminalą (1.13 pav.) - grafinė aplikacija, kurio lange galite dirbti komandinės eilutės režimu.

Ryžiai. 1.13. Virtualus terminalo langas

Virtualių terminalų skaičiaus, skirtingai nei virtualių pultų, niekas neriboja, net tradicijos.

Norėdami baigti seansą virtualiame terminale arba virtualioje konsolėje, įveskite komandos išėjimą (taip pat galite atsijungti virtualioje konsolėje) arba paspauskite klavišų kombinaciją Ctrl+D.

Vieno vartotojo išjungimas nesustabdo visos sistemos. Norėdami išjungti įrenginį, turite duoti komandą su supervartotojo teisėmis

# išjungimas -h 19:00 [darbo dienos pabaiga]

Tokiu atveju likus kelioms minutėms iki nurodyto laiko visiems sistemoje dirbantiems bus išsiųstas įspėjamasis pranešimas „Darbo dienos pabaiga“, po kurio sistema bus tinkamai sustabdyta. Trumpoji šios komandos forma yra sustabdyti , kuri iš karto ir be įspėjimo sustabdo sistemą. Galite paleisti iš naujo naudodami komandą „reboot“.

Iš knygos World of Communication: ICQ autorius Leontjevas Vitalijus Petrovičius

Pirmasis programos paleidimas. ICQ sąsaja Įdiegus ICQ ir iš naujo paleidus kompiuterį, dešiniajame užduočių juostos kampe atsiras kukli gėlė blyškiais žiedlapiais – ICQ Netdetect Agent.

ICQ piktogramaKai prisijungiate prie interneto, gėlių žiedlapiai turėtų pasidaryti ryškiai žali autorius Iš knygos Fedora 8 vartotojo vadovas

Kolisnichenko Denisas Nikolajevičius 1.1.3.1. „Linux Installer“ paleidimas Pirmasis žingsnis yra nustatyti kompiuterį, kad jis būtų paleistas iš kompaktinio disko. Paprastai, kai paleidžiate kompiuterį, ekrane matote pranešimą: Paspauskite DEL, kad patektumėte į SETUP arba paspauskite F2, kad įeitumėte SETUP. SETUP programa

reikia sukonfigūruoti kompiuterį, kad jis būtų paleistas iš CD/DVD (1.2 pav.), Jei jūs autorius Iš „Linux vartotojui“ knygos

Kostrominas Viktoras Aleksejevičius

3 skyrius. Pirmasis Linux OS 3.1 paleidimas. Linux OS paleidimas Taigi, Linux diegimas baigtas ir jūs iš naujo paleidžiate kompiuterį. Jei „Linux“ yra vienintelė jūsų kompiuteryje įdiegta operacinė sistema (tai reiškia, kad LILO įkrovos programa yra pagrindiniame įkrovos įraše - MBR), tada po Iš 200 knygos geriausios programos autorius skirta Linux

Jaremčiukas Sergejus Akimovičius

P5. Į 3 skyrių „Linux OS paleidimas pirmą kartą“ 1. Aleksejaus Makhotkino puslapyje (http://alexm.here.ru/manpages-ru/index.html) galite rasti man puslapių vertimus į rusų kalbą. 2. Guido Gonzato, „Nuo DOS/Windows iki Linux HOWTO“, išvertė Alex Ott, v1.3.2, 1999 m. vasario 22 d. (http://linux.webclub.ru/howtorus/doswinhow/dos-win-to-linux -howto .html). Tai labai naudinga medžiaga autorius Dneprovas Aleksandras G

Paleisti Windows žaidimai Linux Linux yra keletas žaidimų. „Linux“ turi daugybę nestandartinių žaidimų, kad būtų galima užmušti laiką diegdamas platinimą, vartotojas jų ras kelias dešimtis. Taip pat yra atvirojo kodo projektų, siūlančių gana rimtus įvairiausius žaidimus

Iš knygos Kūryba Joomla šablonai autorius Autorius nežinomas

„Premiere Pro“ paleidimas pirmą kartą „Premiere Pro“ įdiegimas kompiuteryje atliekamas naudojant žingsnis po žingsnio vedlį. Jums tereikia vadovautis ekrane pateikiamomis instrukcijomis Premjera programa Pro ir sukurti naują projektą, kad toliau susipažintumėte su programos sąsaja.1. Spustelėkite

Iš knygos Skaitmeninis žurnalas „Computerra“ Nr.71 autorius „Computerra“ žurnalas

Pirmas paleidimas Sukūrę katalogo struktūrą [PathKJoomla!]/templates/, mūsų šablonas atsiras atitinkamoje administracinės Joomla! (Plėtiniai | Šablonas). Dabar jį galima naudoti kaip numatytąjį šabloną. Ryžiai. 2: Katalogų struktūra ir šablonų failai

Iš knygos Computerra PDA N113 (2011-05-28-2011-06-03) autorius „Computerra“ žurnalas

Pirmas žvilgsnis į Fedora Linux 15 Jevgenijus Krestnikovas Paskelbta 2011 m. gegužės 30 d. Šis leidimas svarbus dėl kelių priežasčių. Pirma, Fedora yra populiarus platinimas, kurį naudoja daugelis žmonių visame pasaulyje. Be to, jį sukūrė bendruomenė.

Iš knygos Kaip rasti ir atsisiųsti bet kokius failus internete autorius Reitmanas M.A.

Pirmas žvilgsnis į Fedora Linux 15 Autorius: Evgeniy Krestnikov Paskelbta 2011 m. gegužės 30 d. Šis leidimas svarbus dėl kelių priežasčių. Pirma, Fedora yra populiarus platinimas, kurį naudoja daugelis žmonių visame pasaulyje. Be to, jį kuria nepriklausomų kūrėjų bendruomenė

Iš knygos Vaizdinė pamoka dirbant su netbook autorius Senkevičius G. E.

Pirmasis paleidimas Kaip ir dauguma šiuolaikinių antivirusines programas AVG Anti-Virus Free yra ne viena programa, o paketas, susidedantis iš kelių modulių, atsakingų už įvairias kompiuterio apsaugos sritis:? Antivirusinė - antivirusinis skaitytuvas, yra atsakingas už failų nuskaitymą

Iš knygos Firebird DUOMENŲ BAZĖS KŪRĖJO VADOVAS pateikė Borri Helen

Pirmasis pašto paleidimas Windows Live Norėdami paleisti įdiegtą pašto programa, spustelėkite mygtuką Pradėti ir atsidariusiame meniu pasirinkite Windows Live Mail (1), jei šios piktogramos meniu nėra, spustelėkite Visos programos. Programų sąraše spustelėkite „Windows“ elementas gyvai -

Iš Photoshop CS4 knygos autorius Žvalevskis Andrejus Valentinovičius

Pirma Windows paleidimas Media Norėdami paleisti Windows Media Player, spustelėkite mygtuką užduočių juostoje arba meniu Pradėti pasirinkite Visos programos|Windows Media Player. Kai paleidžiate grotuvą pirmą kartą, būsite paraginti atlikti kai kuriuos nustatymus. Nustatykite jungiklį

Iš knygos Istorijos klausimai: UNIX, Linux, BSD ir kt autorius Fedorčukas Aleksejus Viktorovičius

Firebird paleidimas Linux/UNIX superserveryje Numatytasis diegimo katalogas yra /opt/firebird. Kataloge /bin yra dvejetainio formato Firebird fbserver serveris (ibserver for Firebird 1.0.x), kuris veikia kaip demono procesas Linux/UNIX sistemoje. Jis įsijungia automatiškai po įdiegimo per RPM arba

Iš autorės knygos

„Photoshop CS4“ įdiegimas ir paleidimas pirmą kartą „Photoshop CS4“ sistemos reikalavimai yra šie: procesorius, kurio taktinis dažnis ne mažesnis kaip 1,8 GHz; operacinėje Windows sistema XP su 2 pakeitimų paketu (pageidautina 3 pakeitimų paketu) arba Windows Vista; mažiausiai 512 MB RAM (rekomenduojama 1 GB); 16 bitų

Iš autorės knygos

„Slackware“: pirmasis žingsnis į „Linux“ visiems Taigi, SLS platinimas negyvas. Bet jo siela gyveno. Net ir aktyvaus jos kūrimo laikotarpiu Patrickas Volkerdingas priėmė SLS kaip savo Linux sistemos, vadinamos Slackware, pagrindą, kurios pirmoji versija buvo paskelbta 1993 m. liepos 17 d. ir nuo tada sėkmingai vystoma.

Iš autorės knygos

„IPLabs Linux Team“: Rusijos „Linux“ pradžia Kitas etapas Rusijos „Linux“ kelyje buvo 1998 m., kai „IPLabs“ (tiksliau, jos padalinys – „IPLabs Linux Team“) kartu su Logikos institutu (iš tikrųjų tai buvo tie patys žmonės - Aleksejus Novodvorskis, Aleksejus Smirnovas ir Jurijus Devyatkinas su

© 2024 ermake.ru - Apie kompiuterių taisymą - Informacinis portalas