Нашри системаи GNU Shepherd 0.9 init

Ду сол пас аз ташаккули охирин нашри муҳим, менеҷери хидматрасонии GNU Shepherd 0.9 (собиқ dmd) нашр шуд, ки онро таҳиягарони дистрибюсияи GNU Guix System ҳамчун алтернатива ба системаи ибтидоии SysV-init, ки вобастагӣ дастгирӣ мекунад, таҳия мекунанд. . Демон ва утилитаҳои назоратии Shepherd бо забони Guile (яке аз татбиқи забони схема) навишта шудаанд, ки он инчунин барои муайян кардани танзимот ва параметрҳои оғози хидматҳо истифода мешавад. Shepherd аллакай дар тақсимоти GuixSD GNU/Linux истифода шудааст ва инчунин барои истифода дар GNU/Hurd нигаронида шудааст, аммо метавонад дар ҳама гуна OS-и мувофиқи POSIX кор кунад, ки забони Guile барои он дастрас аст.

Shepherd кори оғоз ва қатъи хидматҳоро бо назардошти муносибатҳои байни хидматҳо, ба таври динамикӣ муайян ва оғоз кардани хидматҳое, ки хидмати интихобшуда аз он вобаста аст, анҷом медиҳад. Shepherd инчунин ошкор кардани ихтилофҳо байни хидматҳо ва пешгирии ҳамзамон кор кардани онҳоро дастгирӣ мекунад. Лоиҳаро метавон ҳам ҳамчун системаи ибтидоии асосӣ (init бо PID 1) ва ҳам дар шакли алоҳида барои идоракунии равандҳои пасзаминаи корбарони инфиродӣ (масалан, барои иҷро кардани tor, privoxy, mcron ва ғайра) бо иҷрои ҳуқуқҳо истифода бурд. аз ин корбарон.

Навовариҳои асосӣ:

  • Консепсияи хидматҳои муваққатӣ (гузаранда) амалӣ карда мешавад, ки пас аз анҷомёбӣ бо сабаби қатъ шудани раванд ё даъвати усули "ист" ба таври худкор ғайрифаъол карда мешавад, ки мумкин аст барои хидматҳои синтезшуда талаб карда шавад, ки пас аз қатъ шудан аз нав оғоз карда намешаванд.
  • Барои эҷоди хидматҳои ба inetd монанд, тартиби "make-inetd-constructor" илова карда шудааст.
  • Барои эҷоди хидматҳое, ки дар ҷараёни фаъолияти шабака фаъол мешаванд (бо услуби фаъолсозии васлаки системавӣ), тартиби "mae-systemd-constructor" илова карда шудааст.
  • Тартиби иловашуда барои оғози хидмат дар замина - "оғоз дар замина".
  • Параметрҳои ": supplementary-groups", "#:create-session" ва "#:resource-limits" ба тартиби "make-forkexec-constructor" илова карда шуданд.
  • Амалиёт бидуни басташавӣ ҳангоми интизории файлҳои PID фаъол карда шудааст.
  • Барои хадамот бидуни параметри "#:log-file" баромад ба syslog таъмин карда мешавад ва барои хадамот бо параметри #:log-file, журнал ба файли алоҳида бо нишон додани вақти сабтҳо навишта мешавад. Гузоришҳо аз раванди чӯпони беимтиёз дар феҳристи $XDG_DATA_DIR нигоҳ дошта мешаванд.
  • Дастгирии сохтмон бо Guile 2.0 қатъ карда шуд. Мушкилот ҳангоми истифодаи версияҳои Guile 3.0.5-3.0.7 ҳал карда шуданд.
  • Ҳоло барои кор китобхонаи Fibers 1.1.0 ё навтар лозим аст.

Манбаъ: opennet.ru

Илова Эзоҳ