GNU Shepherd 0.9.2 init sisteminin buraxılışı

Xidmət meneceri GNU Shepherd 0.9.2 (əvvəllər dmd) nəşr olundu, bu, 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ırlanır. 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.

Dəyişikliklər arasında:

  • Shepherd-də istifadə olunan fayl deskriptorları indi icra əmri yerinə yetirildikdə dərhal bağlanmaq əvəzinə O_CLOEXEC (icraya yaxın) bayrağı ilə işarələnir, bu da tutacaqların dolayı yolla icraçı əmri ilə açılmış xidmətlərə ötürülməsinə imkan verir.
  • Müştəri əlaqələri indi bloklanmayan şəkildə işlənir ki, bu da natamam əmr göndərərkən çobanın asılmasının qarşısını alır.
  • Əgər mövcud deyilsə, “log-fayl” parametrində müəyyən edilmiş jurnal faylları üçün kataloqun yaradılmasını təmin edir.

Mənbə: opennet.ru

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