GNU Shepherd 0.9.2 init жүйесінің шығарылымы

Тәуелділіктерді қолдайтын SysV-init инициализация жүйесіне балама ретінде GNU Guix жүйесінің дистрибутивін әзірлеушілер әзірлеп жатқан GNU Shepherd 0.9.2 (бұрынғы dmd) қызмет менеджері жарияланды. Shepherd басқару демоны мен утилиталары Guile тілінде жазылған (Схема тілінің іске асыруларының бірі), ол сонымен қатар қызметтерді іске қосу параметрлері мен параметрлерін анықтау үшін қолданылады. Shepherd қазірдің өзінде GuixSD GNU/Linux дистрибутивінде қолданылған және GNU/Hurd жүйесінде де пайдалануға бағытталған, бірақ Guile тілі қолжетімді кез келген POSIX-үйлесімді ОЖ-да жұмыс істей алады.

Shepherd қызметтер арасындағы қарым-қатынастарды ескере отырып, таңдалған қызмет тәуелді қызметтерді динамикалық түрде анықтау және іске қосу арқылы қызметтерді бастау және тоқтату жұмысын орындайды. Shepherd сонымен қатар қызметтер арасындағы қайшылықтарды анықтауды және олардың бір уақытта жұмыс істеуіне жол бермеуді қолдайды. Жоба негізгі инициализация жүйесі ретінде де (PID 1-мен инициализация), сондай-ақ жеке пайдаланушылардың фондық процестерін басқару үшін (мысалы, tor, privoxy, mcron және т. осы пайдаланушылардың.

Өзгерістердің ішінде:

  • Shepherd қолданбасында қолданылған файл дескрипторлары енді орындаушы пәрмені орындалған кезде бірден жабылмай, O_CLOEXEC (орындауға жақын) жалауымен белгіленеді, бұл дескрипторларды орындаушы пәрменімен жанама түрде іске қосылған қызметтерге жіберуге мүмкіндік береді.
  • Клиенттік қосылымдар енді бөгетсіз түрде өңделеді, бұл толық емес пәрменді жіберген кезде шопанның іліп қалуына жол бермейді.
  • Каталог жоқ болса, «журнал файлы» параметрінде анықталған журнал файлдары үшін жасалғанын қамтамасыз етеді.

Ақпарат көзі: opennet.ru

пікір қалдыру