ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ ΡΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ GNU Shepherd 0.9.2 (Π±ΡΠ²ΡΠΈΠΉ dmd), ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°Π·Π²ΠΈΠ²Π°Π΅ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° GNU Guix System Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ SysV-init, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠ΅ΠΉ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ. Π£ΠΏΡΠ°Π²Π»ΡΡΡΠΈΠΉ Π΄Π΅ΠΌΠΎΠ½ ΠΈ ΡΡΠΈΠ»ΠΈΡΡ Shepherd Π½Π°ΠΏΠΈΡΠ°Π½Ρ Π½Π° ΡΠ·ΡΠΊΠ΅ Guile (ΠΎΠ΄Π½Π° ΠΈΠ· ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΉ ΡΠ·ΡΠΊΠ° Scheme), ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π½Π°ΡΡΡΠΎΠ΅ΠΊ ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Π·Π°ΠΏΡΡΠΊΠ° ΡΠ΅ΡΠ²ΠΈΡΠΎΠ². Shepherd ΡΠΆΠ΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π² Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π΅ GuixSD GNU/Linux ΠΈ Π½Π°ΡΠ΅Π»Π΅Π½ ΡΠ°ΠΊΠΆΠ΅ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π² GNU/Hurd, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² Π»ΡΠ±ΠΎΠΉ POSIX-ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΠΉ ΠΠ‘, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΡΠ·ΡΠΊ Guile.
Shepherd docht it wurk fan it starten en stopjen fan tsjinsten troch rekken te hΓ’lden mei de relaasjes tusken tsjinsten, dynamysk identifisearje en begjinne de tsjinsten wΓͺrfan de selektearre tsjinst hinget. Shepherd stipet ek it opspoaren fan konflikten tusken tsjinsten en it foarkommen dat se tagelyk rinne. It projekt kin sawol brΓ»kt wurde as it haadinisjalisaasjesysteem (init mei PID 1), en yn in aparte foarm om eftergrΓ»nprosessen fan yndividuele brΓ»kers te behearjen (bygelyks om tor, privoxy, mcron, ensfh.) mei ΓΊtfiering mei de rjochten ΓΊt te fieren fan dizze brΓ»kers.
Under de feroarings:
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π² Shepherd ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠ΅ Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡΡ ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡΡΡ ΡΠ»Π°Π³ΠΎΠΌ O_CLOEXEC (close-on-exec), Π° Π½Π΅ Π·Π°ΠΊΡΡΠ²Π°ΡΡΡΡ ΡΡΠ°Π·Ρ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Β«exec-commandΒ», ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡΡ ΡΠ΅ΡΠ²ΠΈΡΠ°ΠΌ, Π·Π°ΠΏΡΡΠ΅Π½Π½ΡΠΌ Π½Π΅ Π½Π°ΠΏΡΡΠΌΡΡ, Π° ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Β«exec-commandΒ».
- ΠΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΡΠ΅ΠΏΠ΅ΡΡ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ Π² Π½Π΅Π±Π»ΠΎΠΊΠΈΡΡΡΡΠ΅ΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΊΠ»ΡΡΠΈΡΡ Π·Π°Π²ΠΈΡΠ°Π½ΠΈΠ΅ shepherd ΠΏΡΠΈ ΠΎΡΠΏΡΠ°Π²ΠΊΠ΅ Π½Π΅ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
- ΠΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° Π΄Π»Ρ Π»ΠΎΠ³-ΡΠ°ΠΉΠ»ΠΎΠ², ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ Β«log-fileΒ», Π² ΡΠ»ΡΡΠ°Π΅ Π΅Π³ΠΎ ΠΎΡΡΡΡΡΡΠ²ΠΈΡ.
Boarne: opennet.ru