GNU Shepherd 0.9 init sisteminin buraxılışı

Son əhəmiyyətli buraxılışın formalaşmasından iki il sonra, asılılıqları dəstəkləyən SysV-init başlatma sisteminə alternativ olaraq GNU Guix Sistemi paylamasının tərtibatçıları tərəfindən hazırlanan xidmət meneceri GNU Shepherd 0.9 (əvvəllər dmd) nəşr olundu. . Shepherd nəzarət demonu və yardım proqramları Guile dilində (Sxem dilinin tətbiqlərindən biri) yazılmışdır, bu da xidmətlərin işə salınması üçün parametrləri və parametrləri müəyyən etmək üçün istifadə olunur. Shepherd artıq GuixSD GNU/Linux paylanmasında istifadə olunur və eyni zamanda GNU/Hurd-da istifadə üçün nəzərdə tutulub, lakin Guile dilinin mövcud olduğu istənilən POSIX-ə uyğun ƏS-də işləyə bilər.

Shepherd, xidmətlər arasındakı əlaqələri nəzərə alaraq, seçilmiş xidmətin asılı olduğu xidmətləri dinamik olaraq müəyyən edərək və işə salmaqla xidmətlərin işə salınması və dayandırılması işini görür. Shepherd həmçinin xidmətlər arasında ziddiyyətlərin aşkar edilməsini və onların eyni vaxtda işləməsinin qarşısını alır. Layihə həm əsas işə salma sistemi kimi (PID 1 ilə başlanğıc), həm də ayrı-ayrı istifadəçilərin fon proseslərinin idarə edilməsi üçün (məsələn, tor, privoxy, mcron və s.) hüquqları ilə icrası ilə istifadə edilə bilər. bu istifadəçilərdən.

Əsas yeniliklər:

  • Müvəqqəti xidmətlər (keçici) konsepsiyası həyata keçirilir, prosesin dayandırılması və ya bağlandıqdan sonra yenidən başlana bilməyən sintez edilmiş xidmətlər üçün tələb oluna bilən “dayandırma” metodunun çağırılması səbəbindən başa çatdıqdan sonra avtomatik olaraq söndürülür.
  • inetd-ə bənzər xidmətlər yaratmaq üçün “make-inetd-constructor” proseduru əlavə edilmişdir.
  • Şəbəkə fəaliyyəti zamanı aktivləşdirilən xidmətlər yaratmaq üçün (sistemli yuva aktivləşdirmə üslubunda) “make-systemd-constructor” proseduru əlavə edilmişdir.
  • Arxa fonda xidmətin işə salınması üçün prosedur əlavə edildi - "fonda başlanğıc".
  • "make-forkexec-konstruktor" proseduruna ": əlavə qruplar", "#: yaratmaq-sessiya" və "#: resurs limitləri" parametrləri əlavə edildi.
  • PID fayllarını gözləyərkən bloklanmadan əməliyyat aktivləşdirildi.
  • “#:log-file” parametri olmayan xidmətlər üçün syslog-a çıxış təmin edilir, #:log-file parametri olan xidmətlər üçün isə qeyd qeydlərin vaxtını göstərən ayrıca fayla yazılır. İmtiyazsız çoban prosesindən qeydlər $XDG_DATA_DIR kataloqunda saxlanılır.
  • Guile 2.0 ilə tikinti dəstəyi dayandırıldı. Guile 3.0.5-3.0.7 versiyalarından istifadə zamanı problemlər həll edildi.
  • Fibers kitabxanası 1.1.0 və ya daha yenisi indi işləmək üçün tələb olunur.

Mənbə: opennet.ru

Добавить комментарий