A cikk angol változata a következő forrásokból származik http://www.ghacks.net/2009/04/04/get-to-know-linux-the-etcinitd-directory/
1. About /etc/init.d Ha használtál már Linux rendszert, akkor hallottál már az init.d könyvtárról. Pontosan mire szánt ez a katalógus? A nap végén csak egy dolgot csinál, de nem jelentéktelen dolog, az egész rendszerre van megvalósítva, ezért nagyon fontos. Az init.d könyvtár számos start és stop szkriptet tartalmaz a rendszer különböző szolgáltatásaihoz. Mindent irányít az acpidtől az x11-commonig. Természetesen az init.d messze nem ilyen egyszerű. (Fordító megjegyzése: Az ACPID egy új energiamenedzsment szabvány Linux operációs rendszerekhez; Az X11-et X Ablak rendszernek is nevezik, az X Ablak rendszer (X11 vagy X) egy bitmap kijelzővel rendelkező ablakrendszer. Ez egy szabványos eszköztár és protokoll grafikus felhasználói felületek építésére Unix és Unix-szerű operációs rendszereken, valamint az OpenVMS-en, és szinte minden modern operációs rendszeren használható. Ha megnézed az /etc könyvtárat, sok rc#.d típusú könyvtárat találsz (ahol # egy meghatározott inicializációs szintet jelöl, a tartomány 0~6). Ezekben a könyvtárakban sok forgatókönyv irányítja a folyamatot. Ezek a szkriptek vagy "K"-val, vagy "S"-vel kezdődnek. Azok a szkriptek, amelyek K-val kezdődnek, előbb futnak előbb, mint az S betűvel kezdődő szkriptek. Az, hogy ezek a szkriptek hol helyezkednek el, az határozza meg, mikor kezdenek el futni. Ezek között a könyvtárak között a rendszerszolgáltatások úgy működnek együtt, mint egy egészséges gép. Viszont néha szeretnéd tisztán elindítani vagy megölni a folyamatot anélkül, hogy használnád a kill vagy killall parancsokat. Itt jön jól az /etc/init.d! Ha Fedora rendszert használsz, megtalálod ezt a könyvtárat: /etc/rc.d/init.d. Valójában ugyanezt csinálja, bárhová is tesszük az init.d-t. Ahhoz, hogy az init.d könyvtárban szkripteket tudj használni, root vagy sudo jogosultságokra van szükséged. Minden szkriptet parancsként futtatunk, amely nagyjából a következőképpen van felépítve: /etc/init.d/parancs opció Comand a tényleges parancs, amely fut, és a lehetőségek a következők lehetnek: Kezdés állj újratöltés Újraindítás Erő újratöltés A legtöbb esetben a start, stop, restart opciókat használod. Például, ha ki akarod kapcsolni a hálózatot, használhatsz egy ilyen parancsot:
/etc/init.d/networking megállás Egy másik példa, hogy megváltoztatod a hálózati beállításokat, és újra kell indítanod a hálózatot. Ilyen parancsokat használhatsz: /etc/init.d/networking restart Az init.d könyvtárban leggyakrabban használt inicializációs szkriptek a következők:
Hálózatépítés Szamba apache2 ftpd sshd galambcsúc MySQL Természetesen lehetnek más, leggyakrabban használt szkriptjeid is, attól függően, milyen Linux operációs rendszert telepítettél. 2. A /etc/rc.local Az rc.local egy olyan szkript, amit sokat használok. A szkript a rendszer inicializációs szintű szkript futtatása után fut, így biztonságos hozzáadni a futtatni kívánt szkriptet, miután a rendszer elindult. Gyakori eset, hogy hozzáadhatsz hozzá egy NFS mount/mount szkriptet. Hozzáadhatsz néhány script parancsot is a hibakereséshez belül. Például találkoztam olyan helyzettel, amikor a samba szolgáltatás mindig nem működik megfelelően, és az ellenőrzés azt mutatja, hogy a sambának el kellett volna indulnia és végrehajtania a rendszer indításakor, vagyis a samba démon konfiguráció biztosítja, hogy ezt a funkciót helyesen teljesítsék. Ebben az esetben általában nem vesződöm azzal, hogy utánanézzek, csak ezt a sort kell hozzáadnom az /etc/rc.local szkripthez: /etc/init.d/samba kezdődés Így sikeresen megoldódott a SAMBA szolgáltatási kivétel problémája.
3. Összefoglaló A Linux rugalmas. Rugalmassága miatt mindig sokféle megoldást találhatunk ugyanazon a probléma megoldására. Jó példa egy rendszerszolgáltatás indítására. Az /etc/init.d könyvtárban lévő szkripttel és az /etc/rc.local hatékony eszközzel biztos lehetsz benne, hogy a szolgáltatásod hibátlanul működik.
|