Weboldal keresés

Alapvető útmutató a Linux rendszerindítási folyamatának különböző szakaszaihoz


Minden alkalommal, amikor bekapcsolja Linux PC-jét, egy sor lépésen megy keresztül, mielőtt végre megjelenik egy bejelentkezési képernyő, amely bekéri felhasználónevét vagy jelszavát. Négy különböző szakaszon megy keresztül minden Linux disztribúció egy tipikus rendszerindítási folyamat során.

Ebben az útmutatóban kiemeljük a Linux operációs rendszer által a bekapcsolástól a bejelentkezésig megtett különféle lépéseket. Felhívjuk szíves figyelmét, hogy ez az útmutató csak a GRUB2 rendszerbetöltőt és a GRUB2 rendszerbetöltőt veszi figyelembe.systemdinit, mivel ezeket jelenleg a modern Linux disztribúciók túlnyomó többsége használja.

A rendszerindítási folyamat a következő 4 lépésből áll, amelyeket részletesebben tárgyalunk:

  • BIOS Integritás-ellenőrzés (POST)
  • A rendszertöltő betöltése (GRUB2)
  • Kernel inicializálása
  • A systemd indítása, az összes folyamat szülője

1. A BIOS integritásellenőrzése (POST)

A rendszerindítási folyamat általában akkor indul el, amikor a felhasználó megnyomja a bekapcsolás gombot – ha a számítógépet már leállították – vagy újraindítja a rendszert a grafikus felhasználói felület vagy a parancssor használatával.

Amikor a Linux rendszer bekapcsol, a BIOS (Basic Input Output System) elindul, és végrehajt egy Bekapcsolási öntesztet (POST). ). Ez egy integritás-ellenőrzés, amely számos diagnosztikai ellenőrzést végez.

A POST megvizsgálja az olyan összetevők hardveres működését, mint a HDD vagy az SSD, a billentyűzet, a RAM<, USB portok és bármely más hardver. Ha valamelyik hardvereszközt nem észlel, vagy valamelyik eszköz meghibásodik, például sérült HDD vagy SSD, hibaüzenet jelenik meg a képernyőn, amely felszólítja a beavatkozást.

Egyes esetekben sípoló hang hallható, különösen a RAM-modul hiánya esetén. Ha azonban a várt hardver megvan és a várt módon működik, a rendszerindítási folyamat a következő szakaszba lép.

2. A rendszerbetöltő (GRUB2)

Miután a POST befejeződött és a part tiszta, a BIOS megvizsgálja az MBR-t (Master Boot Record) a rendszerbetöltő és a lemez particionálási információkat.

Az MBR egy 512 bájtos kód, amely a merevlemez első szektorában található, amely általában /dev/sda vagy /dev/hda. kód> a merevlemez architektúrától függően. Ne feledje azonban, hogy néha az MBR megtalálható a Linux Live USB vagy DVD telepítésén.

A Linux rendszerben három fő rendszerbetöltő típus létezik: LILO, GRUB és GRUB2. A GRUB2 rendszerbetöltő a legújabb és elsődleges rendszerbetöltő a modern Linux disztribúciókban, és tájékoztatja azon döntésünket, hogy elhagyjuk a másik kettőt, amelyek az idő múlásával elavulttá váltak.

A GRUB2 a GRand Unified Bootloader 2-es verzió rövidítése. Miután a BIOS megtalálta a grub2 rendszerbetöltőt, végrehajtja és betölti a fő memóriába ( >RAM).

A grub2 menü lehetővé teszi néhány dolog elvégzését. Lehetővé teszi a használni kívánt Linux kernelverzió kiválasztását. Ha néhányszor frissítette a rendszert, előfordulhat, hogy különböző kernelverziókat láthat a listában. Ezenkívül lehetővé teszi bizonyos kernelparaméterek szerkesztését a billentyűzet billentyűinek megnyomásával.

Ezenkívül egy kettős rendszerindítású beállításnál, ahol több operációs rendszer van telepítve, a grub menü lehetővé teszi, hogy kiválassza, melyik operációs rendszert indítsa el. A grub2 konfigurációs fájl a /boot/grub2/grub2.cfg fájl. A GRUB fő célja a Linux kernel betöltése a fő memóriába.

3. Kernel inicializálása

A kernel minden Linux rendszer magja. Összekapcsolja a számítógép hardverét a mögöttes folyamatokkal. A kernel vezérli az összes folyamatot a Linux rendszeren. Miután a kiválasztott Linux kernelt betölti a rendszerbetöltő, magának kell kicsomagolnia a tömörített verzióját, mielőtt bármilyen feladatot végrehajtana. Az önkicsomagoláskor a kiválasztott kernel felcsatolja a gyökérfájlrendszert, és inicializálja a /sbin/init programot, amelyet általában initként emlegetnek.

Az Init mindig az első végrehajtandó program, és 1-es folyamatazonosítóval vagy PID-vel van hozzárendelve. Ez az init folyamat, amely különféle démonokat hoz létre, és csatlakoztatja az /etc/ fájlban megadott összes partíciót. fstab fájlt.

A kernel ezután felcsatolja a kezdeti RAM-lemezt (initrd), amely egy ideiglenes gyökérfájlrendszer, amíg a valódi gyökér fájlrendszert fel nem csatolják. Minden kernel a /boot könyvtárban található, a kezdeti RAM lemezképpel együtt.

4. A Systemd indítása

A kernel végül betölti a Systemd programot, amely a régi SysV init cseréje. A Systemd az összes Linux-folyamat anyja, és többek között kezeli a fájlrendszerek csatlakoztatását, a szolgáltatások indítását és leállítását, hogy csak néhányat említsünk.

A Systemd a /etc/systemd/system/default.target fájl segítségével határozza meg azt az állapotot vagy célt, amelybe a Linux rendszernek be kell indulnia.

  • Asztali munkaállomások esetében (grafikus felhasználói felülettel) az alapértelmezett célérték 5, amely megfelel a régi SystemV-init 5-ös futási szintjének.
  • Szerver esetén az alapértelmezett cél a multi-user.target, amely megfelel a SysV-init 3. futtatási szintjének.

Íme a rendszeres célok lebontása:

  • poweroff.target (0. futási szint): Kikapcsolás vagy a rendszer leállítása.
  • rescue.target (1. futási szint): mentési shell munkamenetet indít.
  • multi-user.target (2., 3., 4. futási szint): A rendszert nem grafikus (konzolos) többfelhasználós rendszerre konfigurálja.
  • graphical.target (5. futási szint): a rendszer beállítása grafikus többfelhasználós felület használatára a hálózati szolgáltatásokkal.
  • reboot.target (6. futási szint): újraindítja a rendszert.

A rendszer aktuális céljának ellenőrzéséhez futtassa a következő parancsot:

systemctl get-default

Egyik célpontról a másikra válthat a következő parancs futtatásával a terminálon:

init runlevel-value

Például az init 3 nem grafikus állapotba állítja be a rendszert.

Az init 6 parancs újraindítja a rendszert, az init 0 pedig kikapcsolja a rendszert. Ügyeljen arra, hogy meghívja a sudo parancsot, amikor erre a két célpontra szeretne váltani.

A rendszerindítási folyamat akkor fejeződik be, amikor a systemd betölti az összes démont, és beállítja a cél- vagy futási szint értéket. Ezen a ponton meg kell adnia felhasználónevét és jelszavát, amellyel beléphet a Linux rendszerébe.