Dokumentáció/SL9.3/Rendszer/A Linux-rendszer indítása és beállítása

Icon-loader.png A Linux-rendszer indítása összetett folyamat. A rendszer számos komponensének kell hiba nélkül együttműködnie. Ez a fejezet az alapul szolgáló irányelveket és az érintett komponenseket tekinti át. A futási szintek és a SUSE sysconfig segítségével történő rendszerkonfigurációját szintén ebben a fejezetben írjuk le.

A Linux rendszerindítási folyamata

A Linux rendszerindítási folyamata több szintből áll, amelyek mindegyikét más és más komponens végzi. Az alábbi lista röviden összefoglalja a rendszerindítási folyamatot és bemutatja az érintett fő komponensek jellemzőit.

  1. BIOS A számítógép bekapcsolása után a BIOS inicializálja a képernyőt és billentyűzetet, majd teszteli a fő memóriát. Eddig a pontig a gép még semmilyen tömegtároló eszközhöz nem fért hozzá. Az aktuális dátum és idő, illetve a legfontosabb perifériákra vonatkozó adatok a CMOS-ban (CMOS Setup) tárolt értékekből kerülnek betöltésre. Az első merevlemez és annak jellemzőinek felismerése után a BIOS átadja a rendszervezérlést a rendszertöltőnek.
  2. Rendszertöltő Az első merevlemez első 512 bájtos fizikai adatszektora betöltésre kerül a fő memóriába és a szektor elején található rendszertöltő átveszi az irányítást. A rendszertöltő által végrehajtott parancsok határozzák meg az indítási folyamat további részét. Az első merevlemez első 512 bájtját éppen ezért Master Boot Record-nak (fő rendszertöltő rekord, MBR) hívjuk. A rendszertöltő ezután átadja az irányítást az aktuális operációs rendszernek, ebben az esetben a Linux-kernelnek. A GRUB-bal, a Linux rendszertöltőjével kapcsolatos további információ: A rendszertöltő.
  3. Kernel és initrd A rendszervezérlés átadásához a rendszertöltő betölti a memóriába a kernelt és a kezdeti memóriaeszközt (initrd). A Linux-kernel lehetővé teszi kis fájlrendszerek RAM-ba töltését és onnan programok futtatását még a tényleges root fájlrendszer felcsatolása előtt. A kernel ezután kicsomagolja az initrd-t és felcsatolja ideiglenes root fájlrendszerként. Az initrd tartalma egy minimális Linux-rendszer, amely egy linuxrc nevű végrehajtható fájlt tartalmaz. Ez a végrehajtható fájl a tényleges root fájlrendszer felcsatolása előtt kerül végrehajtásra. Ha lehetséges, a kernel felszabadítja az initrd által elfoglalt memóriát és a linuxrc sikeres befejeződése után elindítja az init fájlt. Az initrd-vel kapcsolatos további információ: initrd.
  4. linuxrc Ez a program végrehajtja a megfelelő root fájlrendszer felcsatolásához szükséges műveleteket: megfelelő kernelfunkciókat biztosít a használni kívánt fájlrendszerhez, illetve eszköz-illesztőprogramokat a tárolóvezérlőkhöz. A tényleges root fájlrendszer sikeres felcsatolása után a linuxrc leáll és a kernel elindítja az init programot. A linuxrc-vel kapcsolatos további információ: linuxrc.
  5. init Az init kezeli a rendszer tényleges indítását; a különböző szinteken különböző funkciókat biztosít. Az init leírása: Az init program.

initrd

Az initrd egy kisméretű (jellemzően tömörített) fájlrendszer, amelyet a kernel be tud tölteni a RAM-ba, majd felcsatolja ideiglenes root fájlrendszerként. Egy minimális Linux-környezetet biztosít, amely még a tényleges root fájlrendszer felkapcsolása előtt lehetővé teszi programok végrehajtását. Ez a minimális Linux-környezet BIOS-rutinok segítségével kerül betöltésre a memóriába. Azon kívül, hogy legyen elegendő memória, más speciális hardverkövetelményt nem támaszt. Az initrd-nek mindig biztosítania kell egy linuxrc nevű végrehajtható programot, amelynek hiba nélkül kell befejeződnie.

A tényleges root fájlrendszer felcsatolása és a tényleges operációs rendszer elindítása előtt a kernelnek a root fájlrendszert tartalmazó eszköz eléréséhez szüksége van a megfelelő illesztőprogramokra. Lehet, hogy speciális illesztőprogramokra van szükség bizonyos típusú merevlemez-meghajtók vagy éppen a hálózati fájlrendszer eléréséhez. A kernelnek az initrd fájlrendszerének olvasásához szükséges kódot is tartalmaznia kell. A linuxrc be is töltheti a root fájlrendszerhez szükséges modulokat.Az mkinitrd parancsfájllal hozzon létre egy initrd-t. SUSE LINUX alatt a betöltendő modulokat az /etc/sysconfig/kernel fájlban található INITRD_MODULES változó adja meg. Telepítés után ez a változó automatikusan beállításra kerül a megfelelő értékre (a telepítés során futó linuxrc elmenti, hogy mely modulok kerültek betöltésre). A modulok az INITRD_MODULES változóban megadott megjelenítési sorrendben kerülnek betöltésre. Ez különösen több SCSI-illesztőprogram használata esetén fontos, mivel ellenkező esetben a merevlemezek neve megváltozna. Igazából elegendő lenne betölteni a root fájlrendszer eléréséhez szükséges illesztőprogramokat. Az initrd mindazonáltal betölti a telepítéshez szükséges összes SCSI-illesztőprogramot, mert a későbbi betöltésük problémás lehet.

Icon-Important.png Az initrd frissítése

A rendszertöltő ugyanúgy tölti be az initrd-t, mint a kernel. Az initrd frissítése után a GRUB-ot nem kell újratelepíteni, mivel a GRUB indításkor a könyvtárban megkeresi a megfelelő fájlt.

linuxrc

A linuxrc fő célja a valódi root fájlrendszer felcsatolásának és elérésének előkészítése. Az aktuális rendszerkonfigurációtól függően a linuxrc felelős az alábbi feladatokért.

Kernelmodulok betöltése
A hardverkonfigurációtól függően a számítógép hardverkomponenseinek eléréséhez (a legfontosabb közülük a merevlemez) speciális illesztőprogramokra lehet szükség. A végső root fájlrendszer eléréséhez a kernelnek be kell töltenie a megfelelő fájlrendszer-illesztőprogramokat.
RAID- és LVM-beállítások kezelése
Ha a rendszer úgy lett beállítva, hogy a root fájlrendszert a RAID- vagy LVM-köteteken tárolja, akkor a linuxrc beállítja az LVM-et vagy a RAID-et, hogy a root fájlredszer később elérhető legyen. A RAID-del kapcsolatos további információ: Szoftveres RAID beállítása. Az LVM-mel kapcsolatos további információ: LVM-konfiguráció.
Hálózati beállítások
Ha a rendszer egy hálózaton (NFS-en) keresztül felcsatolt root fájlrendszer használatára lett beállítva, akkor ahhoz, hogy a root fájlrendszer később biztosan elérhető legyen, a linuxrc-nek ellenőriznie kell, hogy be vannak-e töltve és be vannak-e állítva a megfelelő hálózati illesztőprogramok.Amikor a linuxrc a kezdeti rendszerindítás során, a telepítési folyamat részeként kerül meghívásra, akkor a feladatai különböznek a korábban említettektől:
Telepítési adathordozó megkeresése
A telepítési folyamat elindításakor a gép a telepítési adathordozóról a YaST telepítő segítségével betölt egy telepítési kernelt és egy speciális initrd-t. A RAM-fájlrendszerben futó YaST telepítőnek ismernie kell a telepítési adathordozó tényleges helyét, hogy elérhesse és telepíthesse az operációs rendszert.
Hardverfelismerés kezdeményezése és a megfelelő kernelmodulok betöltése
A rendszerindítási folyamat minimális illesztőprogram-készlettel indul (lásd initrd), amely a legtöbb hardverkonfigurációval használható. A linuxrc elindít egy kezdeti hardverkeresési folyamatot, amely meghatározza a hardverkonfigurációhoz megfelelő illesztőprogramokat. Ezek az értékek később az /etc/sysconfig/kernel fájl INITRD_MODULES változójába íródnak a célból, hogy a későbbi rendszerindítási folyamat már egy egyedi initrd-t használhasson. A telepítési folyamat során a linuxrc betölti ezt a modulkészletet.
A telepítési vagy mentőrendszer betöltése
A hardver megfelelő felismerése és a megfelelő illesztőprogramok betöltése után a linuxrc elindítja a telepítőrendszert, amely tartalmazza az aktuális YaST telepítőt, illetve a mentőrendszert.
A YaST indítása
A linuxrc végül elindítja a YaST-ot, amely elkezdi a csomagok telepítését és a rendszer beállítását.

További információ

További információ az /usr/src/linux/Documentation/ramdisk.txt és az /usr/src/linux/Documentation/initrd.txt fájlokban, valamint az initrd(4) és mkinitrd(8) kézikönyvoldalakon (man) található.

Az init program

Az init program az 1-es folyamatszámú folyamat, amely a rendszer megfelelő inicializálásáért felelős. Minden más folyamat az init vagy valamelyik leszármazott folyamatának leszármazottja. Az init tehát speciális szerepet játszik. Közvetlenül a kernel indítja el és nem is hat rá a 9-es szignál, amely normál esetben leállítja a folyamatokat. Minden más programot az init vagy annak egyik leszármazott folyamata indítja el.

Az init központilag kerül beállításra az /etc/inittab fájlban. Itt kerülnek beállításra a futási szintek is (Futási szintek). Szintén ez a fájl határozza meg, hogy az egyes szinteken mely szolgáltatások és démonok álljanak rendelkezésre. Az /etc/inittab bejegyzéseitől függően az init számos parancsfájlt lefuttat. Az áttekinthetőség érdekében a parancsfájlok mindegyike az /etc/init.d könyvtárban található.

A rendszerindítás és -leállítás teljes folyamatát az init tartja karban. E nézőpontból a kernel egy háttérfolyamatnak tekinthető, amelynek feladata az összes folyamat vezérlése és karbantartása, valamint a CPU-idő és a hardverhozzáférés beállítása a többi programtól érkező kéréseknek megfelelően.

Futási szintek

A Linux-rendszerekben a futási szintek határozzák meg a rendszer elindításának módját és a futó rendszerben rendelkezésre álló szolgáltatásokat. Rendszerindítás után a rendszer az /etc/inittab fájl initdefault sorában megadott módon kerül indításra. Ez általában 3 vagy 5. Lásd: A használható futási szintek. A futási szint a rendszerindítás közben is megadható (például a rendszerindítási promptnál). Azokat a paramétereket, amelyeket nem közvetlenül a kernel értékel ki, megkapja az init.

A futási szintek működés közbeni módosításához adja ki az init parancsot és adja meg argumentumként a megfelelő számot. Ezt csak a rendszeradminisztrátor hajthatja végre. Az init 1 (vagy shutdown now) hatására a rendszer egyfelhasználós módba vált, amely rendszerkarbantartásra és -adminisztrációra használható. A munka elvégzése után az adminisztrátor az init 3 parancs segítségével kapcsolhat vissza normál futási szintre, amely elindítja az összes lényeges programot és lehetővé teszi, hogy a normál felhasználók bejelentkezzenek és X grafikus környezet nélkül használják a rendszert. A grafikus környezet – például a GNOME, a KDE vagy egy másik ablakkezelő – használata az init 5 parancs segítségével engedélyezhető. Az init 0 vagy a shutdown -h now parancs hatására a rendszer leáll. Az init 6 vagy shutdown -r now hatására a rendszer leáll, majd újraindul.

Icon-Important.png 2-es futási szint egy NFS-en keresztül felcsatolt /usr partícióval

A 2-es futási szintet nem kell használni, ha a rendszer NFS-en keresztül csatolja fel a /usr partíciót. Az /usr könyvtár tartalmazza a rendszer megfelelő működéséhez szükséges fontos programokat. Mivel az NFS szolgáltatás a 2-es futási szinten (több helyi felhasználós mód távoli hálózat nélkül) nem elérhető, a rendszer ugyancsak korlátozottá válna.


Táblázat: A használható futási szintek
Futási szint Leírás
0 Rendszerleállás
S Egyfelhasználós mód; a rendszerindítási promptból, csak US billentyűzetkiosztással
1 Egyfelhasználós mód
2 Több helyi felhasználós mód távoli hálózat (például NFS) nélkül
3 Teljes többfelhasználós mód hálózattal
4 Nem használt
5 Teljes többfelhasználós mód hálózattal és X képernyőkezelővel – KDM (alapértelmezett), GDM vagy XDM
6 A rendszer újraindítása


Az összes szokásos SUSE LINUX telepítésben az 5-ös futási szint az alapértelmezett beállítás. A felhasználók közvetlenül a grafikus felületen jelentkeznek be. Ha az alapértelmezett futási szint a 3, akkor az 5-ös szintre váltás előtt az X Window rendszert megfelelően be kell állítani (Az X Window rendszer). Ha ez megtörtént, akkor az init 5 parancs kiadásával ellenőrizze, hogy a rendszer megfelelően működik-e. Ha minden a várakozásnak megfelelően működik, akkor a YaST segítségével az alapértelmezett futási szint 5-re állítható.

Icon-Caution.png Az /etc/inittab fájl módosítása

Ha az /etc/inittab fájl megsérül, akkor elképzelhető, hogy a rendszer nem megfelelően fog működni. Éppen ezért legyen nagyon körültekintő az /etc/inittab fájl módosításakor és mindig készítsen biztonsági másolatot az érintetlen változatról. A sérülés kijavításához a rendszerindítási promptnál a kernel neve után próbálja meg beírni az init=/bin/sh parancsot, hogy közvetlenül a parancsértelmezőbe kerüljön. Ezután a mount -o remount,rw / parancs segítségével tegye a fájlrendszert írhatóvá, a cp parancs segítségével pedig cserélje le az /etc/inittab fájlt az elmentett változatra. A fájlrendszer hibáinak megakadályozása érdekében újraindítás előtt a root fájlrendszert változtassa csak olvashatóra: mount -o remount,ro /.

A futási szint megváltoztatása

A futási szintek módosításakor általában két dolog történik. Először elindulnak az aktuális futási szinthez tartozó leállító parancsfájlok, amelyek bezárják az aktuális futási szint működéséhez szükséges fontos programokat. Majd ezután elindulnak az új futási szint indító parancsfájljai. Itt a legtöbb esetben jónéhány program elindításra kerül. A 3-asról 5-ös szintre módosításkor például az alábbiak történnek:
  1. Az adminisztrátor (root) az init <tt>5</tt> parancs kiadásával utasítja az init-et a másik futási szintre váltásra.
  2. Az init megvizsgálja a konfigurációs fájlt (/etc/inittab) és megállapítja, hogy az /etc/init.d/rc fájlt az új futási szint paraméterként megadásával kell elindítani.
  3. Az rc ezután meghívja az aktuális futási szint leállító parancsfájljai közül azokat, amelyekhez az új futási szinten nem tartozik indító parancsfájl. Ebben az esetben ezek az /etc/init.d/rc3.d könyvtárban található parancsfájlok (az előző futási szint a 3-as volt) közül azok, amelyek neve K betűvel kezdődik. A K betű utáni szám határozza meg az indítási sorrendet, ugyanis bizonyos függőségeket figyelembe kell venni.
  4. Legutoljára pedig elindulnak az új futási szint indító parancsfájljai. A jelen példában ezek az /etc/init.d/rc5.d könyvtárban található, S betűvel kezdődő nevű fájlok. Az indításuk sorrendjére ugyanaz a szabály vonatkozik (az S utáni szám).

Ha ugyanarra a futási szintre vált át, mint az éppen aktuális, akkor az init ellenőrzi az /etc/inittab fájl módosításait, és csupán a módosításoknak megfelelő lépéseket teszi meg (például elindítja a getty programot egy másik csatolón).

Init parancsfájlok

Az /etc/init.d könyvtárban kétféle parancsfájl található:
Az init által közvetlenül végrehajtott parancsfájlok
Ez csak a rendszerindítási folyamat közben, vagy egy azonnali rendszerleállítás kezdeményezésekor áll fenn (áramellátási hiba esetén, vagy ha a felhasználó megnyomja a Ctrl-Alt-Del billentyűkombinációt).IBM S/390 és zSeries rendszerek esetén csak a rendszerindítási folyamat során vagy egy azonnali rendszerleállítás kezdeményezésekor áll fenn (áramellátási hiba miatt vagy »jelkimaradás« esetén). E parancsfájlok végrehajtását az /etc/inittab szabályozza.
Az init által közvetetten végrehajtott parancsfájlok
Ezek a futási szint módosításakor futnak le, és mindig a /etc/init.d/rc fő parancsfájlt hívják meg, amely garantálja az érintett parancsfájlok megfelelő sorrendjét.Az összes parancsfájl a /etc/init.d könyvtárban található. A futási szint módosítására szolgáló parancsfájlok is itt találhatók, de ezek szimbolikus láncokon keresztül kerülnek meghívásra az egyik alkönyvtárból (/etc/init.d/rc0.d - /etc/init.d/rc6.d). Ez csak a jobb átláthatóság érdekében van így, valamint hogy ne duplázódjanak a parancsfájlok, ha több futási szinten is használja őket a rendszer. Mivel minden parancsfájl végrehajtható indítási és leállítási parancsfájlként is, ezeknek a parancsfájloknak meg kell érteniük a start és stop paramétereket. A parancsfájloknak a restart, reload, force-reload és status paraméterekre is reagálniuk kell. Az egyes paraméterek leírása: A használható init parancsfájl-paraméterek. Az init által közvetlenül futtatott parancsfájlok nem rendelkeznek ilyen hivatkozásokkal. Ezek szükség esetén a futási szinttől függetlenül futnak le.


Táblázat: A használható init parancsfájl-paraméterek
Paraméter Leírás
start A szolgáltatás elindítása. Egy futó szolgáltatás elindítása automatikusan sikeresnek számít.
stop A szolgáltatás leállítása.
restart Ha a szolgáltatás fut, leállítja, majd újraindítja. Ha nem fut, akkor elindítja.
reload Újratölti a konfigurációt a szolgáltatás leállítása és újraindítása nélkül.
force-reload Újratölti a konfigurációt, ha a szolgáltatás támogatja ezt. Ellenkező esetben ugyanúgy viselkedik, mint a restart opció.
status Megjeleníti a szolgáltatás aktuális állapotát.


A futásiszint-specifikus alkönyvtárban található láncok segítségével a parancsfájlok több futási szinthez is rendelhetők. Csomagok telepítésekor vagy eltávolításakor ezek a hivatkozások az insserv program segítségével adhatók hozzá vagy távolíthatók el (vagy az /usr/lib/lsb/install_initd parancsfájl segítségével, amely szintén ezt a programot hívja meg). Részletes információt erről az insserv(8) kézikönyvoldala (man) tartalmaz. Most pedig az elsőként vagy utolsóként elindított rendszerindító ill. leállító parancsfájlok rövid leírása, valamint a karbantartási parancsfájl rövid bemutatása következik.

boot
A rendszer az init programmal közvetlen elindítása során kerül végrehajtásra. Ez a kiválasztott futási szinttől független és csak egyszer kerül végrehajtásra. Itt kerül felcsatolásra a proc és pts fájlrendszer, illetve aktiválásra a blogd (rendszerindítás-naplózó démon). A rendszer frissítés vagy telepítés utáni első indításakor a kezdeti rendszerkonfiguráció kerül elindításra.
A boot és rc minden más szolgáltatás előtt indítja el a blogd démont. A blogd fenti parancsfájlok által elindított tevékenységek végrehajtása (például bizonyos parancsfájlok futtatása) után kerül leállításra. A blogd a képernyőkimenetet a /var/log/boot.msg naplófájlba írja, de csak akkor, ha a/var írható-olvasható formában kerül felcsatolásra. Ellenkező esetben a blogd puffereli az adatokat, amíg a /var rendelkezésre nem áll. A blogd-vel kapcsolatos további információ a blogd(8) kézikönyvoldalán (man) található.
A boot parancsfájl felelős az /etc/init.d/boot.d könyvtárban található, S betűvel kezdődő nevű parancsfájlok elindításáért. Itt kerülnek ellenőrzésre a fájlrendszerek és szükség esetén beállításra a hurokeszközök. A rendszeridő is beállításra kerül. Ha hiba történik a fájlrendszer automatikus ellenőrzése és kijavítása közben, akkor a rendszeradminisztrátor a root jelszó első megadása után közbeavatkozhat. Legutoljára a boot.local parancsfájl kerül végrehajtásra.
boot.local
Ebben a fájlban további, a rendszerindításkor, még az adott futási szintre váltás előtt végrehajtandó parancsok adhatók meg. Sok tekintetben hasonlít a DOS-rendszerek AUTOEXEC.BAT fájljához.
boot.setup
Ez a parancsfájl az egyfelhasználós módból bármely másik futási szintre váltáskor kerül végrehajtásra és több olyan alapvető beállításért felelős, mint például a billentyűzetkiosztás vagy a virtuális konzolok inicializálása.
halt
Ez a parancsfájl csak 0-ás (leállás) vagy 6-os (újraindítás) futási szintre váltáskor kerül végrehajtásra. Úgy kerül végrehajtásra, mint halt (leállítás) vagy reboot (újraindítás). A halt meghívási módjától függ, hogy a rendszer leállítása vagy újraindítása történik.
rc
Ez a parancsfájl meghívja az aktuális futási szint megfelelő leállító parancsfájljait és elindítja az újonnan kiválasztott futási szint indító parancsfájljait.

Init parancsfájlok készítése

Saját parancsfájlok is létrehozhatók és egyszerűen beilleszthetők a fent leírt sémába. Az egyedi parancsfájlok formázásával, elnevezésével és rendszerezésével kapcsolatos információt az LSB-specifikáció, valamint az init(8), init.d(7) és insserv(8) kézikönyvoldalak (man) tartalmaznak. Érdemes megtekinteni a startproc(8) és killproc(8) kézikönyvoldalat (man) is.
Icon-Caution.png Saját init parancsfájlok létrehozása

A hibás init parancsfájlok lefagyaszthatják a gépet. Az ilyen parancsfájlokat nagy körültekintéssel szabad csak módosítani, ha lehetséges, szigorú tesztelésnek kitéve a többfelhasználós környezetben. Az init parancsfájlokkal kapcsolatos további hasznos információ: Futási szintek.

Ha egy adott programhoz vagy szolgáltatáshoz készít egyéni init parancsfájlt, használja az /etc/init.d/skeleton sablont. Mentse el a fájl egy példányát új néven, majd módosítsa a megfelelő program- és fájlneveket, elérési utakat és egyéb részleteket. A parancsfájl természetesen tovább finomítható, hogy az init eljárás a megfelelő műveleteket indítsa el.

A felső részben látható INIT INFO blokk a parancsfájl kötelező része, és feltétlenül módosítani kell. Lásd: Egy minimális INIT INFO blokk.


Icon-example.png Példa: Egy minimális INIT INFO blokk

### BEGIN INIT INFO
# Provides:          FOO
# Required-Start:    $syslog $remote_fs
# Required-Stop:     $syslog $remote_fs
# Default-Start:     3 5
# Default-Stop:      0 1 2 6
# Description:       Start FOO to allow XY and provide YZ
### END INIT INFO

Az INFO első sorában a Provides: rész után adja meg az init parancsfájl által vezérelt program vagy szolgáltatás nevét. A Required-Start: és a Required-Stop: sorokban adja meg azokat a szolgáltatásokat, amelyeket az adott szolgáltatás elindítása vagy leállítása előtt el kell indítani vagy le kell állítani. Ez az információ később kerül felhasználásra a futásiszint-könyvtárakban található parancsfájlnevek számozásának előállításakor. A Default-Start: és Default-Stop: szakaszban adja meg azokat a futási szinteket, amelyekben a szolgáltatást automatikusan el kell indítani illetve le kell állítani. Végül a Description: részben adja meg a kérdéses szolgáltatás rövid leírását.

A futásiszint-könyvtárak (/etc/init.d/rc?.d/) és az /etc/init.d/ könyvtárban található parancsfájlok közötti lánc létrehozásához adja ki az insserv <tt><újparancsfájlnév></tt> parancsot. Az insserv program kiértékeli az INIT INFO fejlécet és létrehozza a futásszint-könyvtárakban (/etc/init.d/rc?.d/) található parancsfájlok elindításához és leállításához szükséges láncokat . A program a megfelelő indítási és leállítási sorrendre is figyel: az egyes futási szinteken megfelelően számozza a láncok neveit. Ha inkább egy grafikus eszközzel kívánja létrehozni az ilyen láncokat, akkor használja a YaST által biztosított szerkesztőt (Rendszerszolgáltatások (futási szintek)).

Ha az /etc/init.d/ könyvtárban már meglévő parancsfájlt kell integrálni egy meglévő futtásiszint-sémába, akkor a futásiszint-könyvtárakban rögtön létrehozhatók a láncok, akár az insserv segítségével, akár a YaST futásszint-szerkesztőjében a megfelelő szolgáltatás engedélyezésével. A módosítások a következő újraindításkor kerülnek alkalmazásra – az új szolgáltatás automatikusan el fog indulni.

A láncokat ne állítsa be kézzel. Ha az INFO blokkban valami nem jól van megadva, akkor problémák fognak felmerülni az insserv parancs későbbi, más szolgáltatásra vonatkozó futtatásakor.

System Services (Runlevel)

A YaST-modul elindítása után megjeleníti a rendelkezésre álló szolgáltatások áttekintő listáját és a szolgáltatások aktuális állapotát – már amennyiben be vannak kapcsolva. Döntse el, hogy a modult Egyszerű módban vagy Szakértői módban kívánja használni. Az alapértelmezett Egyszerű mód a legtöbb célnak megfelelő. A baloldali oszlop a szolgáltatás nevét, a középső az aktuális állapotot, a jobboldali pedig egy rövid leírást jelenít meg. A kiválasztott szolgáltatáshoz az ablak alsó részében egy részletesebb leírás jelenik meg. A szolgáltatás engedélyezéshez a táblázatban válassza azt ki, majd kattintson az Engedélyezés menüpontra. A szolgáltatás ugyanezekkel a lépésekkel tiltható le.

Ha finomabban kívánja szabályozni a futási szinteket, amelyben a szolgáltatás elindításra vagy leállításra kerül, illetve ha az alapértelmezett futási szintet kívánja módosítani, akkor először válassza ki a Szakértői mód menüpontot. Ebben a módban a párbeszédablak az alapértelmezett futási szintet (»initdefault«, az a futási szint, amelyen a rendszer alapértelmezés szerint elindul) jeleníti meg legfelül. Normális esetben a SUSE LINUX rendszer alapértelmezett futási szintje az 5 (teljes többfelhasználós mód hálózattal és X rendszerrel). Értelmes alternatíva lehet a 3-as futásszint (teljes többfelhasználós mód hálózattal).

A YaST párbeszédablak segítségével kiválasztható egy másik futási szint, mint új alapértelmezett érték (A használható futási szintek). Az ablakban lévő táblázat segítségével letilthatók és engedélyezhetők az egyes szolgáltatások és démonok. A táblázat felsorolja a rendelkezésre álló szolgáltatásokat és démonokat, megjeleníti, hogy pillanatnyilag engedélyezve vannak-e a rendszeren, és ha igen, akkor mely futási szintekhez. Ha az egér segítségével kiválasztotta az egyik sort, akkor jelölje meg az azon futási szintek melletti négyzetet (B, 0, 1, 2, 3, 5, 6 és S), amelyeken a kiválasztott szolgáltatást vagy démont futtani kívánja. A 4-es futási szint kezdetben nincs megadva, hogy létre lehessen hozni egy egyedi futási szintet. A táblázatos áttekintés alatt az éppen kiválasztott szolgáltatás vagy démon rövid leírása látható.

Az Indítás/Leállítás/Frissítés menüpont segítségével állapítsa meg, hogy a szolgáltatást kell-e aktiválni. A Frissítési állapot... menüpont kiválasztásával a rendszer ellenőrzi az aktuális állapotot. A Beállítás/Visszaállítás menüpontokkal megadható, hogy a módosítások alkalmazásra kerüljenek-e a rendszeren, vagy a beállítások visszaállításra kerüljenek-e a futásiszint-szerkesztő elindítása előtt érvényes értékekre. A Kész gomb megnyomására a program lemezre menti a módosított beállításokat.

Icon-Caution.png Futásiszint-beállítások módosítása

A hibás futásiszint-beállítások a rendszert haszálhatatlanná tehetik. A módosítások alkalmazása előtt ismerje meg a következményeket.

A SuSEconfig és az /etc/sysconfig fájl

A SUSE LINUX legfőbb beállításai az /etc/sysconfig könyvtárban található konfigurációs fájlok segítségével adhatók meg. Az /etc/sysconfig könyvtárban lévő egyedi fájlokat csak azok a parancsfájlok olvassák, amelyekhez tartoznak. Ez biztosítja, hogy a hálózati beállításokat például csak a hálózattal kapcsolatos parancsfájlok elemezzék. Sok más konfigurációs fájl is létrehozásra kerül az /etc/sysconfig fájl beállításainak megfelelően. Ezt a feladatot a SuSEconfig hatjtja végre. Ha például módosítja a hálózati konfigurációt, akkor elképzelhető, hogy a SuSEconfig /etc/host.conf fájlt is módosítja, mivel ez a hálózati konfigurációhoz tartozó egyik lényeges fájl.

Ha kézzel módosítja ezeket a fájlokat, akkor a megfelelő helyeken végzett összes szükséges módosítás ellenőrzése érdekében később futtassa a SuSEconfig-ot. Ha a YaST sysconfig-szerkesztő segítségével módosítja a konfigurációt, akkor az összes módosítás automatikusan alkalmazásra kerül, mivel a YaST automatikusan elindítja a SuSEconfigot a konfigurációs fájlok szükséges módosításához.

Ez a rendszer újraindítása nélkül lehetővé teszi a konfiguráció leglényegesebb módosításait. Mivel néhány módosítás meglehetősen összetett, a módosítások érvényre juttatásához néhány programot újra kell indítani. A hálózati konfiguráció módosításaihoz például újra kell indítani az érintett hálózati programokat. Ez az rcnetwork stop és rcnetwork start parancs kiadásával érhető el.

A rendszerkonfiguráció módosításának ajánlott lépései:

  • Az init 1 parancs segítségével tegye a rendszert egyfelhasználós módba (1-es futási szint) .
  • Módosítsa a konfigurációs fájlokat. Ez megtehető egy tetszőleges szerkesztővel, vagy a YaST sysconfig szerkesztőjével (A YaST sysconfig szerkesztője).
Icon-Caution.png A rendszerkonfiguráció kézi módosítása

Ha nem a YaST segítségével módosítja az /etc/sysconfig könyvtár konfigurációs fájljait, akkor ellenőrizze, hogy az üres változóértékeket két idézőjel ábrázolja-e KEYTABLE="" és hogy a szóközt tartalmazó értékek idézőjelek közé vannak-e zárva. A csak egy szóból álló értékek esetén nincs szükség idézőjelre.

  • Indítsa el a SuSEconfig-ot, hogy a módosítások alkalmazásra kerüljenek. Ha a YaST segítségével módosította a konfigurációs fájlokat, akkor ez automatikusan végrehajtásra kerül.
  • Az init 3 parancs segítségével a rendszert állítsa vissza az előző futási szintre (a 3 helyébe írja az előző futási szint értékét).Ez az eljárás főként a rendszerszintű beállítások – mint például a hálózati konfiguráció – módosítása esetén lényeges. A kis módosításokhoz nem kell egyfelhasználós módba lépni, bár ez biztosan garantálja, hogy az összes érintett program megfelelő módon újraindul.
Icon-info.png Automatizált rendszerkonfiguráció beállítása

A SuSEconfig által végrehajtott automatikus konfiguráció letiltásához az /etc/sysconfig/suseconfig fájlban található ENABLE_SUSECONFIG változót állítsa no értékre. Ha a SUSE telepítéstámogatást használni kívánja, akkor ne tiltsa le a SuSEconfig-ot. Az automatikus konfiguráció részlegesen is letiltható.

A YaST sysconfig szerkesztője

Rendszerkonfiguráció a sysconfig szerkesztő segítségével
A legfontosabb SUSE LINUX beállításokat tartalmazó fájlok az /etc/sysconfig könyvtárban találhatók. A sysconfig szerkesztő a lehetséges beállításokat egyszerűen olvasható módon jeleníti meg. Az értékek módosíthatók és később hozzáadhatók a könyvtárban lévő egyedi konfigurációs fájlokhoz. Ezeket általában nem kell kézzel módosítani, mivel ezek a fájlok automatikusan beállításra kerülnek a csomag telepítésekor vagy a szolgáltatás beállításakor.
Icon-Caution.png Az /etc/sysconfig/* fájlok módosítása

Tapasztalat és ismeret hiányában ne módosítsa az /etc/sysconfig könyvtár fájljait. Ez komolyan károsíthatja a rendszert. Az /etc/sysconfig könyvtárban lévő fájlok egy rövid megjegyzést tartalmaznak minden változóhoz, amelyben leírják a hatásukat.

A YaST sysconfig párbeszédablak három részre van osztva. A párbeszédablak baloldali része a beállítható változók fanézetét jeleníti meg. Egy változó kiválasztásakor a jobboldali rész az aktuális kijelölést és a változó aktuális értékét jeleníti meg. A harmadik ablak röviden leírja a változó célját, lehetséges értékeit, alapértelmezett értékét, valamint a konfigurációs fájlt, amelyből a változók származik. A párbeszédablak arról is szolgáltat információt, hogy a változó módosítása után mely konfigurációs parancsfájl kerül végrehajtásra, és hogy a módosítás eredményeképp mely új szolgáltatás lesz elindítva. A YaST felszólít a módosítások megerősítésére és értesít arról, hogy mely parancsfájlok kerülnek végrehajtásra, miután a Befejezés kiválasztásával kilépett a párbeszédablakból. A kihagyni kívánt szolgáltatásokat és parancsfájlokat is válassza ki, hogy később azok is elindításra kerüljenek.