A GNU Shepherd 0.8 init rendszer kiadása

Elérhető szerviz menedzser GNU Shepherd 0.8 (ex dmd), amelyet a GNU Guix System disztribúció fejlesztői fejlesztenek a SysV-init inicializálási rendszer függőség-tudatos alternatívájaként. A Shepherd vezérlő démon és a segédprogramok a Guile nyelven (a Scheme nyelv egyik implementációja) vannak megírva, amely a szolgáltatások indításához szükséges beállítások és paraméterek meghatározására is szolgál. A Shepherd már használatos a GuixSD GNU/Linux disztribúciójában, és GNU/Hurdban is használható, de futhat bármely POSIX-kompatibilis operációs rendszeren, amelyhez a Guile nyelv elérhető.

A Shepherd használható fő inicializálási rendszerként (init 1-es PID-vel), és külön formában is használható az egyes felhasználók háttérfolyamatainak kezelésére (például tor, privoxy, mcron stb. futtatására), a végrehajtás jogával ezek a felhasználók. A Shepherd a szolgáltatások indításának és leállításának munkáját a szolgáltatások közötti kapcsolatok figyelembevételével végzi, dinamikusan azonosítja és elindítja azokat a szolgáltatásokat, amelyektől a kiválasztott szolgáltatás függ. A Shepherd támogatja a szolgáltatások közötti konfliktusok észlelését és azok egyidejű futásának megakadályozását is.

Főbb újítások:

  • Make-kill-destructor eszközök, amelyek megölnek egy folyamatcsoportot;
  • Hozzáadott „default-pid-file-timeout” paraméter, amely meghatározza a PID-fájl létrehozásának várakozási idejét;
  • Ha a PID fájl nem jelenik meg az időtúllépésen belül, akkor a teljes folyamatcsoport megszűnik (dönt a probléma munkafolyamatok elhagyása PID fájl nélkül);
  • Hozzáadtuk a „#:file-creation-mask” paramétert a „make-forkexec-constructor”-hoz, végrehajtotta a naplófájl létrehozását, és megszűnt a régi hívási konvenció támogatása;
  • Megoldott a fordítással kapcsolatos problémák prctl nélküli rendszereken, például GNU/Hurd;
  • Kijavítottunk egy hibát, amely miatt a SIGALRM minden másodpercben elküldésre került.

Forrás: opennet.ru

Hozzászólás