A GNU Shepherd 0.9 inicializáló rendszer megjelenése

Két évvel a legutóbbi jelentős kiadás után megjelent a GNU Shepherd 0.9 szolgáltatáskezelő (korábban dmd), amelyet a GNU Guix System disztribúció fejlesztői fejlesztenek a SysV-init indítási rendszer alternatívájaként, amely támogatja a függőségeket. A Shepherd kezelő démon és segédprogramok Guile nyelven (a Scheme nyelv egyik megvalósítása) készültek, amelyet a szolgáltatások konfigurációs beállításainak és indítási paramétereinek meghatározásához is használnak. A Shepherd már használatban van a GNU/Linux GuixSD disztribúcióban, és célja a GNU/Hurd rendszerén történő használat is, de bármely POSIX-kompatibilis operációs rendszer alatt működhet, amelyhez elérhető a Guile nyelv.

A Shepherd végrehajtja a szolgáltatások indítását és leállítását, figyelembe véve a szolgáltatások közötti kapcsolatokat, dinamikusan meghatározva és indítva azokat a szolgáltatásokat, amelyek a kiválasztott szolgáltatástól függenek. A Shepherd támogatja a szolgáltatások közötti konfliktusok meghatározását, és megakadályozza azok egyidejű végrehajtását. A projekt alapértelmezett indítási rendszerként (init c PID 1) vagy elkülönítve is használható a felhasználók háttérfolyamatainak kezelésére (például a tor, privoxy, mcron stb. indítására), felhasználói jogokkal történő végrehajtással.

Főbb újítások:

  • A megvalósított átmeneti szolgáltatások (transient) koncepciója automatikusan kikapcsolódik a folyamat befejezése vagy a „stop” metódus hívása után, ami szükséges lehet azoknál a szintetikus szolgáltatásoknál, amelyek nem indíthatók újra a leállítás után.
  • inetd-szerű szolgáltatások létrehozásához hozzáadódott a „make-inetd-constructor” eljárás.
  • Hálózati aktivitáskor aktivált szolgáltatások létrehozásához (systemd socket activation stílusban) hozzáadódott a „make-systemd-constructor” eljárás.
  • Hozzáadódott egy eljárás a szolgáltatás háttérben történő indítására - „start-in-the-background”.
  • A „make-forkexec-constructor” eljárásba hozzáadódott a „:supplementary-groups”, „#:create-session” és „#:resource-limits” paraméterek.
  • A PID-fájlok várakozása alatt nem blokkol, biztosítva a zavartalan működést.
  • A „#:log-file” paraméter nélküli szolgáltatások esetében a syslog-ba küldi a kimenetet, míg a „#:log-file” paraméterrel rendelkező szolgáltatások esetében időbélyeggel ellátott külön fájlban tárolja a naplózást. Az nem privilegizált folyamatból származó shepherd logok a $XDG_DATA_DIR könyvtárban kerülnek tárolásra.
  • Megszűnt a Guile 2.0-ral való fordítás támogatása. Megoldásra kerültek a Guile 3.0.5-3.0.7 verziók használatával kapcsolatos problémák.
  • A működéshez mostantól a Fibers 1.1.0 vagy egy újabb verzió szükséges.

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster