Line 25: |
Line 25: |
| * restarts the process if it fails | | * restarts the process if it fails |
| * provides a consistent mechanism for controlling the underlying process | | * provides a consistent mechanism for controlling the underlying process |
− | | + | {{Note box|msg=Gerrit Pape's '''runit''' came from previous work by Dan Bernstein on the '''supervise''' supervision environment. '''runit''' provides additional features, and has been released under a free software license.}} |
− | <div class="NOTE"><blockquote class="NOTE">
| + | <div class="SECT2"> |
− | | |
− | '''Note: '''Gerrit Pape's '''runit''' came from previous work by Dan Bernstein on the '''supervise''' supervision environment. '''runit''' provides additional features, and has been released under a free software license.
| |
− | | |
− | </blockquote></div><div class="SECT2">
| |
| ---- | | ---- |
| | | |
Line 74: |
Line 70: |
| | | |
| This looks like a complex process tree, but is a critical part of the SME Server's design for reliability. Each process is independent, has a consistent management interface, has process limits imposed on it, and will restart if it happens to fail. | | This looks like a complex process tree, but is a critical part of the SME Server's design for reliability. Each process is independent, has a consistent management interface, has process limits imposed on it, and will restart if it happens to fail. |
− | | + | {{Note box|msg=For the curious, if init fails, the system reboots.}} |
− | <div class="NOTE"><blockquote class="NOTE">
| |
− | | |
− | '''Note: '''For the curious, if init fails, the system reboots.
| |
− | | |
− | </blockquote></div>
| |
| | | |
| For further documentation on runit, refer to the runit manual page. | | For further documentation on runit, refer to the runit manual page. |
Line 110: |
Line 101: |
| * If so, it runs the <tt class="FILENAME">/etc/init.d/syslog</tt> script with the argument <var class="LITERAL">start</var>. | | * If so, it runs the <tt class="FILENAME">/etc/init.d/syslog</tt> script with the argument <var class="LITERAL">start</var>. |
| * If the service is not enabled, it exits without starting the service. | | * If the service is not enabled, it exits without starting the service. |
− | | + | {{Note box|msg=If a script exists in the <tt class="FILENAME">/etc/init.d/supervise/</tt> directory, <tt class="FILENAME">e-smith-service</tt> will use that in preference to the one in the <tt class="FILENAME">/etc/init.d/</tt> directory. This allows us to install our own supervised startup scripts <span class="emphasis">''without modifying the original package''</span>.}} |
− | <div class="NOTE"><blockquote class="NOTE">
| + | </div></div></div> |
− | | |
− | '''Note: '''If a script exists in the <tt class="FILENAME">/etc/init.d/supervise/</tt> directory, <tt class="FILENAME">e-smith-service</tt> will use that in preference to the one in the <tt class="FILENAME">/etc/init.d/</tt> directory. This allows us to install our own supervised startup scripts <span class="emphasis">''without modifying the original package''</span>.
| |
− | | |
− | </blockquote></div></div></div></div>
| |