GNU Shepherd 0.9 init tizimining chiqarilishi

So'nggi muhim nashr yaratilganidan ikki yil o'tgach, GNU Shepherd 0.9 (sobiq dmd) xizmat menejeri nashr etildi, u GNU Guix System tarqatish ishlab chiquvchilari tomonidan qaramlikni qo'llab-quvvatlaydigan SysV-init ishga tushirish tizimiga muqobil sifatida ishlab chiqilmoqda. . Cho'pon boshqaruvi demoni va yordamchi dasturlari Guile tilida (Sxema tilining ilovalaridan biri) yozilgan bo'lib, u xizmatlarni ishga tushirish sozlamalari va parametrlarini aniqlash uchun ham ishlatiladi. Shepherd allaqachon GuixSD GNU/Linux distributivida qo‘llanilgan va GNU/Hurd-da ham foydalanishga mo‘ljallangan, lekin Guile tili mavjud bo‘lgan har qanday POSIX-mos OS da ishlashi mumkin.

Shepherd xizmatlar o'rtasidagi munosabatlarni hisobga olgan holda, tanlangan xizmat bog'liq bo'lgan xizmatlarni dinamik ravishda aniqlash va ishga tushirish orqali xizmatlarni ishga tushirish va to'xtatish ishlarini bajaradi. Shepherd shuningdek, xizmatlar o'rtasidagi ziddiyatlarni aniqlash va ularning bir vaqtda ishlashini oldini olishni qo'llab-quvvatlaydi. Loyiha asosiy ishga tushirish tizimi (PID 1 bilan boshlash) sifatida ham, alohida foydalanuvchilarning fon jarayonlarini boshqarish uchun alohida shaklda (masalan, tor, privoxy, mcron va boshqalarni ishga tushirish) huquqlar bilan bajarilishi mumkin. ushbu foydalanuvchilardan.

Asosiy innovatsiyalar:

  • Vaqtinchalik xizmatlar (o'tkinchi) kontseptsiyasi amalga oshiriladi, jarayon tugashi yoki "to'xtatish" usulini chaqirish tufayli tugallangandan so'ng avtomatik ravishda o'chiriladi, bu sintez qilingan xizmatlar uchun talab qilinishi mumkin bo'lgan yopilgandan keyin qayta ishga tushirilmaydi.
  • Inetd-ga o'xshash xizmatlarni yaratish uchun "make-inetd-constructor" protsedurasi qo'shildi.
  • Tarmoq faoliyati davomida faollashtirilgan xizmatlarni yaratish uchun (tizimli rozetkani faollashtirish uslubida) “make-systemd-constructor” protsedurasi qo'shildi.
  • Xizmatni fonda ishga tushirish uchun qo'shilgan protsedura - "fonda boshlash".
  • “Make-forkexec-konstruktor” dasturiga “: supplementary-groups”, “#:create-session” va “#:resource-limits” parametrlari qo‘shildi.
  • PID fayllarni kutish vaqtida blokirovkasiz ishlash yoqilgan.
  • "#: log-file" parametri bo'lmagan xizmatlar uchun syslogga chiqish taqdim etiladi va #: log-file parametrli xizmatlar uchun jurnal yozuvlar vaqtini ko'rsatuvchi alohida faylga yoziladi. Imtiyozsiz cho'pon jarayonidagi jurnallar $XDG_DATA_DIR katalogida saqlanadi.
  • Guile 2.0 bilan qurilishni qo‘llab-quvvatlash to‘xtatildi. Guile 3.0.5-3.0.7 versiyalaridan foydalanishdagi muammolar hal qilindi.
  • Endi ishlash uchun Fibers kutubxonasi 1.1.0 yoki undan yangiroq versiyasi talab qilinadi.

Manba: opennet.ru

a Izoh qo'shish