diff options
author | Laurent Bercot <ska-skaware@skarnet.org> | 2018-04-05 09:42:37 +0000 |
---|---|---|
committer | Laurent Bercot <ska-skaware@skarnet.org> | 2018-04-05 09:42:37 +0000 |
commit | ae97e8065a0e3be60d16c0d9e158afc697aa94e5 (patch) | |
tree | 00e44d6ab2a4099d0b21db69688747876cecb0b3 /doc/s6-supervise.html | |
parent | dfe97bb01666ffc2af8029de06aa6ae5ff473a2a (diff) | |
download | s6-ae97e8065a0e3be60d16c0d9e158afc697aa94e5.tar.xz |
Add note about SIGINT in s6-svscan and s6-supervise doc
Diffstat (limited to 'doc/s6-supervise.html')
-rw-r--r-- | doc/s6-supervise.html | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/doc/s6-supervise.html b/doc/s6-supervise.html index b2a83d5..d9852b5 100644 --- a/doc/s6-supervise.html +++ b/doc/s6-supervise.html @@ -171,6 +171,17 @@ better to have a collection of <a href="servicedir.html">service directories</a> single <a href="scandir.html">scan directory</a>, and just run <a href="s6-svscan.html">s6-svscan</a> on that scan directory. s6-svscan will spawn the necessary s6-supervise processes, and will also take care of logged services. </li> + <li> s6-supervise is not supposed to have a controlling terminal: it's generally +launched by a <a href="s6-svscan.html">s6-svscan</a> process that itself does not +have a controlling terminal. If you run s6-supervise from an interactive shell, be +warned that typing ^C in the controlling terminal (which sends a SIGINT to +all processes in the foreground process group in the terminal) will terminate +s6-supervise, but not the supervised processes - so, the daemon will keep running +as an orphan. This is by design: supervised processes should be as resilient as +possible, even when their supervisors die. However, if you want to launch +s6-supervise from an interactive shell and need your service to die when you ^C it, +you can obtain this behaviour by creating a <tt>./nosetsid</tt> file in the +<a href="servicedir.html">service directory</a>. </li> <li> You can use <a href="s6-svc.html">s6-svc</a> to send commands to the s6-supervise process; mostly to change the service state and send signals to the monitored process. </li> |