Shepherd ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΊΠ°ΠΊΡΠΎ ΠΊΠ°ΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ (init Ρ PID 1), ΡΠ°ΠΊΠ° ΠΈ Π² ΠΎΡΠ΄Π΅Π»Π½Π° ΡΠΎΡΠΌΠ° Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΠΎΠ½ΠΎΠ²ΠΈ ΠΏΡΠΎΡΠ΅ΡΠΈ Π½Π° ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π·Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° tor, privoxy, mcron ΠΈ Π΄Ρ.) Ρ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Ρ ΠΏΡΠ°Π²Π°ΡΠ° Π½Π° ΡΠ΅Π·ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ. Shepherd Π²ΡΡΡΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΠ° ΠΏΠΎ ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ ΠΈ ΡΠΏΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ»ΡΠ³ΠΈ, ΠΊΠ°ΡΠΎ Π²Π·Π΅ΠΌΠ° ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ Π²ΡΡΠ·ΠΊΠ°ΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΠ»ΡΠ³ΠΈΡΠ΅, ΠΊΠ°ΡΠΎ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Ρ ΠΈ ΡΡΠ°ΡΡΠΈΡΠ° ΡΡΠ»ΡΠ³ΠΈΡΠ΅, ΠΎΡ ΠΊΠΎΠΈΡΠΎ Π·Π°Π²ΠΈΡΠΈ ΠΈΠ·Π±ΡΠ°Π½Π°ΡΠ° ΡΡΠ»ΡΠ³Π°. Shepherd ΡΡΡΠΎ ΡΠ°ΠΊΠ° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΠΎΡΠΊΡΠΈΠ²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΠ»ΡΠ³ΠΈ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΡΠ²Π° ΡΡΡ Π½ΠΎΡΠΎ Π΅Π΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅.
ΠΡΠ½ΠΎΠ²Π½ΠΈ ΠΈΠ½ΠΎΠ²Π°ΡΠΈΠΈ:
- make-kill-destructor ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π° ΡΠ±ΠΈΠ²Π°Π½Π΅ Π½Π° Π³ΡΡΠΏΠ° ΠΏΡΠΎΡΠ΅ΡΠΈ;
- ΠΠΎΠ±Π°Π²Π΅Π½ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ "default-pid-file-timeout", ΠΊΠΎΠΉΡΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Ρ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΠΈΠ·ΡΠ°ΠΊΠ²Π°Π½Π΅ Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° PID ΡΠ°ΠΉΠ»;
- ΠΠΊΠΎ PID ΡΠ°ΠΉΠ»ΡΡ Π½Π΅ ΡΠ΅ ΠΏΠΎΡΠ²ΠΈ Π² ΡΠ°ΠΌΠΊΠΈΡΠ΅ Π½Π° Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΠΈΠ·ΡΠ°ΠΊΠ²Π°Π½Π΅, ΡΡΠ»Π°ΡΠ° Π³ΡΡΠΏΠ° ΠΏΡΠΎΡΠ΅ΡΠΈ ΡΠ΅ ΠΏΡΠ΅ΠΊΡΠ°ΡΡΠ²Π° (ΡΠ΅ΡΠ°Π²Π°
ΠΏΡΠΎΠ±Π»Π΅ΠΌΡΡ ΠΎΡΡΠ°Π²ΡΠ½Π΅ Π½Π° ΡΠ°Π±ΠΎΡΠ½ΠΈ ΠΏΡΠΎΡΠ΅ΡΠΈ Π±Π΅Π· PID ΡΠ°ΠΉΠ»); - ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡΡΡ "#:file-creation-mask" ΠΊΡΠΌ "make-forkexec-constructor", Π²ΡΠ²Π΅Π΄Π΅Π½ΠΎ Π΅ ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° Π»ΠΎΠ³ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ Π΅ ΠΏΡΠ΅ΠΌΠ°Ρ Π½Π°ΡΠ° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π·Π° ΡΡΠ°ΡΠ°ΡΠ° ΠΊΠΎΠ½Π²Π΅Π½ΡΠΈΡ Π·Π° ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅;
- ΠΠΎΡΠΈΠ³ΠΈΡΠ°Π½ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΈ Π±Π΅Π· prctl, ΠΊΠ°ΡΠΎ GNU/Hurd;
- ΠΠΎΠΏΡΠ°Π²Π΅Π½Π° Π΅ Π³ΡΠ΅ΡΠΊΠ°, ΠΊΠΎΡΡΠΎ ΠΊΠ°ΡΠ° SIGALRM Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΡΠ°ΡΠ° Π²ΡΡΠΊΠ° ΡΠ΅ΠΊΡΠ½Π΄Π°.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru