bootloader

Upstart - Hogyan jobb vagy rosszabb, mint a többiek?

Upstart - Hogyan jobb vagy rosszabb, mint a többiek?
Amikor az Upstartot először a Canonical fogantatta, az uralkodó rendszer még mindig a sysvinit volt, amely mindent sorrendben indított el, és utána többé-kevésbé leállt. Meggyőződött arról, hogy a rendszer is kecsesen leállt. Ez szükségessé tette más megoldások meglétét az eszközök forró csatlakoztatására, mint például az USB-meghajtók és hasonlók. A tervezők fő gondolata az volt, hogy eseményvezérelt legyen, ez megkönnyítette az említett hot-plugging események kezelését. Az Upstart nem módosított sysvinit parancsfájlokat is futtathat, így csak telepítéssel migrálhat az Upstart programba. Ez a projekt csak karbantartási módban van, ezért ezt a bejegyzést érdekes darabként használja. Régi, frissített rendszerekben futhat be ebbe a rendszerbe.

Miben különbözik az Upstart?

Az Upstartnak van egy modellje a rendelkezésre álló munkák megkezdésére, amikor az esemény bekövetkezik. Hasonlítsa össze ezt a systemd-vel, amely elindítja azokat a folyamatokat, amelyeken az összes többi rendszer fut. A fő különbség az, hogy az Upstart eseményeket vár, a systemd pedig a függőségeket koordinálja. Mindkét rendszer képes normál szkriptek futtatására, és mindkettő párhuzamosan próbál elindulni. Mivel a különbségek olyan kicsiek, az Upstart szkripteket általában csak egy systemd szolgáltatásfájl segítségével lehet meghívni. Azt is megtehetik, hogy változatlan systemV fájlokat futtatnak. Valójában mindkettő alapértelmezés szerint egy régi systemV fájlszerkezetet keres. A nagy különbség az, hogy az Upstart meghatározott eseményeket keres, hogy bármit is elindítsanak. Tehát, ha hozzá szeretné adni a saját szolgáltatását, akkor meg kell találnia, hogy milyen összefüggésben van szüksége a szolgáltatására. Általában ez könnyű, mivel olyasmit szeretne, amely például az asztalon fut. Az asztal az 5. futási szinttel kezdődik, ezért ezt be kell állítania a szkriptbe. Ezzel szemben a systemd esetében ez a grafikus cél. Az upstartban más eseményeket is használhat, mint például felszerelés, csatlakoztatás és billentyűzet kérés. Ezeket a systemd-vel kezeljük a foglalatokon és a dbuson keresztül.

Hogyan lehet migrálni a szkripteket?

Minden Upstart szkripted van az / etc / init könyvtárban, nevük job neve, 'conf' kiterjesztéssel. A parancsfájlok nem futtathatóak, csak egy vagy több futtatható fájlra mutatnak, amelyet futtatni kellene. Bármely Upstart szkriptben meghatároztad, hogy a szkript melyik eseménynek induljon és mikor álljon le. Ezenkívül rendelkeznie kell indítás előtti és leállítás előtti bejegyzésekkel. Ezek előkészítik a környezetet és megtisztítják a végrehajtást. Az alábbiakban egy minta szkript található

leírás "Egyszerű szkript"
indulás futási szinten [2345]
megáll a futási szinten [06]
újjáélesztés
env SCRIPT_ENV_VAR = '/ elérési út / fájlhoz.konfig '
chdir / path / to / script /
exec bash szkript.SH

Az 'exec' utasítás megmondja, mi fog történni, amikor manuálisan elindítja. A start és stop irányelv meghatározza, hogy a szkript mikor indul el automatikusan. Amint láthatja, beállíthatja azt a könyvtárat is, amelyben futni fog. Az Upstartnak még sok szempontja van, de meg kell tanulnia, hogyan kell kivándorolni.

Ahhoz, hogy ez a szkript a systemd-ben működjön, létre kell hoznia egy szolgáltatásfájlt.

Mértékegység]
Leírás = Egyszerű szkript
[Szolgáltatás]
Környezet = SCRIPT_ENV_VAR = / elérési út / fájlhoz.konfig
WorkingDirectory = / elérési út / a / szkripthez
ExecStart = / usr / bin / bash szkript.SH
Újraindítás = mindig
[Telepítés]
WantedBy = többfelhasználós.cél

Itt láthatja, hogy ugyanazok történnek, de más kulcsszavakkal. A formátum egyszerű és lényegre törő. A futási szintek helyett megadhatja, hogy melyik cél szeretné a szkriptet. Ez rávilágít arra, hogy a systemd lényege a függőség és a dolgok elindítása az adott környezet számára. Vegye figyelembe azt is, hogy az ExecStart globális elérési útra mutat, soha nem használ helyi elérési utat.

Hol remekel?

Az Upstart-ot párhuzamos viselkedésre tervezték, de azt is, hogy kicsi legyen. Ha ezt bárhol megtalálja, akkor az beágyazott rendszerekben és a ChromeOS-ban lesz. Igen, a ChromeOS-nak megvolt. Ennek oka az, hogy az Ubuntu tetejére épült a kezdetektől fogva, amikor az Ubuntu alapértelmezett kezdeti rendszerként indult. A ChromeOS azóta átállt a Gentoo alapjául.

Következtetés

Az Upstart érdekes téma, de főleg történelmi. Szüksége lehet rá, ha régi rendszerekbe ütközik. A Linuxon a leggyakoribb alternatíva a systemd. Ha fenntartásai vannak a systemd-vel kapcsolatban, keressen más minimális rendszereket. Az egyik érdekes a szoptatós, sinit. Három jelet támogat, és az összes szkriptet magának kell megírnia, vagy mástól kell módosítania a szkripteket. Ez érdekes gyakorlat lehet, de csak akkor hasznos, ha nagyon minimális és speciális rendszeren dolgozik.

Az OSD-fedvény megjelenítése teljes képernyős Linux-alkalmazásokban és játékokban
Teljes képernyős játékok lejátszása vagy alkalmazások figyelemelterelés nélküli, teljes képernyős módban történő használata elvághatja a panelen vagy ...
Az 5 legjobb játékrögzítő kártya
Mindannyian láttuk és szerettük a YouTube-on a streaming játékokat. A PewDiePie, a Jakesepticye és a Markiplier csak néhány a legnépszerűbb játékosok ...
Hogyan lehet játékot fejleszteni Linuxon
Egy évtizeddel ezelőtt nem sok Linux-felhasználó jósolta, hogy kedvenc operációs rendszerük egy napon a videojátékok népszerű játékplatformja lesz. El...