A démon futása perl

Miután szükségessé vált a perl parancsfájl démon módban történő futtatása. Miért van szükségem rá - egy másik történet, de ezt akarom megosztani.

Mivel nem nagyon szeretem a "kerékpározás újraindítását", először úgy döntöttem, hogy google. Érdemes megjegyezni, hogy nem sok megvalósítási példa volt, amelyek túlnyomó többsége egy tcp szerver prototípusát írta le IO :: Socket vagy Socket használatával. + elágazás villával (). A perl-démon hasonló változata nem egészen illett, és a kíváncsiság elkapta.
. Meg kell adni az "igazság pillanatának" keresése hosszú óráit, amelyeket elhagyok. A megoldás meglehetősen egyszerűnek bizonyult.

1. lépés: A kód maga perl-démon.

Ezt a példát teljesen üresnek lehet tekinteni az Ön céljaira. Plusz, hogy a kódot legalább másodpercenként végrehajthatja, ellentétben a cron-val. Manuálisan kezdje el, csak ne felejtse el a végrehajtáshoz és a hozzáadáshoz való jogot A konzolban a démon a háttérben kezdődik. Például: / home / full / path / exec-daemon
Tovább mennünk.

2. lépés: A perl démon automatikus feltöltése a rendszer indításakor.

Itt minden normális és egyszerű - /etc/rc.d Megjegyzem, hogy a kísérleteket az Ubuntu 10.04 verzióján végezték. és talán egyes elemek eltérőek lehetnek. A /etc/init.d/ mappában tegye a shell parancsfájlt a démon indításához:

Megjegyzés: PID = `ps afx | awk / exec-daemon $ / "" Olyan módon mentem el, hogy amikor a perl démont futtatom, nem kell néznem a pártra és a fájlokat lezárni. vagyis egy pillantást vetünk a folyamatokra, és ha van egy paj, esküszünk vagy indulunk.

Ezután hozzon létre szimbolikus linkeket az rc0.d - rcS.d mappában, tetszőlegesen tetszés szerint, de legalább rc3.d. Itt az igazság egy árnyalat: a kapcsolat címének S vagy K-val kell kezdődnie, vagyis meg kell kezdeni vagy megállítani; miután a számnak 0 és 100 között kell lennie, ami a folyamat indítási sorrendjét jelenti. És aztán a shell parancsfájl nevét.

Például @ S91exec-daemon (kezdőknek: a kutya automatikusan megjelenik szimbolikus link létrehozásakor.) Ctrl + x + s) Mind! Túlterheltek, az afx konzolban, és ott keresik a démonunkat.

Kapcsolódó cikkek