commit 042b7d0e92e4cf42506c79ab6bfe504ddb08dc86
parent c4f01cd510b5ec915f8821d39d3df282380ba375
Author: Laurent Bercot <ska-skaware@skarnet.org>
Date: Mon, 27 Jul 2015 14:02:51 +0000
- Doc fixes on notification, mentions of s6-rc
- version: 2.2.0.0
Diffstat:
3 files changed, 44 insertions(+), 7 deletions(-)
diff --git a/doc/index.html b/doc/index.html
@@ -33,7 +33,7 @@ a very small amount of code.
<p>
Examples of things you can do by assembling together several programs
-provided by s6:
+provided by s6 - besides process supervision:
</p>
<ul>
@@ -309,7 +309,9 @@ is a package to help you create a <tt>/sbin/init</tt> binary booting a
Linux system with s6-svscan as process 1. </li>
<li> <a href="https://github.com/just-containers/s6-overlay">s6-overlay</a>
is a project that automates integration of s6 into Docker images. </li>
- <li> <a href="http://jjacky.com/anopa">anopa</a> is a dependency-based
+ <li> <a href="http://skarnet.org/software/s6-rc/">s6-rc</a> is a
+dependency-based service manager for s6. </li>
+ <li> <a href="http://jjacky.com/anopa">anopa</a> is another dependency-based
service manager for s6. </li>
</ul>
@@ -318,7 +320,7 @@ service manager for s6. </li>
<ul>
<li> <tt>s6</tt> is discussed on the
-<a href="http://www.skarnet.org/lists.html#supervision">supervision</a> mailing-list. </li>
+<a href="http://skarnet.org/lists.html#supervision">supervision</a> mailing-list. </li>
</ul>
<h3> Similar work </h3>
@@ -346,6 +348,12 @@ different way than the previous items on this list. </li>
<ul>
<li> Felix von Leitner's <a href="http://www.fefe.de/minit/">minit</a> is an
init system for Linux, with process supervision capabilities. </li>
+ <li> <a href="http://git.suckless.org/sinit">suckless init</a> is
+considered by many as the smallest possible init. I disagree: suckless
+init is incorrect, because it
+has no supervision capabilities, and thus, killing all processes but init
+can brick the machine. Nevertheless, suckless init, like many other
+suckless projects, is a neat exercise in minimalism. </li>
<li> <a href="http://freshmeat.net/projects/sysvinit/">sysvinit</a> is the
traditional init system for Linux. </li>
<li> <a href="http://upstart.ubuntu.com/">Upstart</a> is a well-known init system
diff --git a/doc/overview.html b/doc/overview.html
@@ -346,7 +346,8 @@ s6 provides tools to do that:
<li> The <a href="s6-svwait.html">s6-svwait</a>,
<a href="s6-svlisten1.html">s6-svlisten1</a> and
<a href="s6-svlisten.html">s6-svlisten</a> programs will wait until a set of
-daemons is up, ready or down. </li>
+daemons is up, ready, down (as soon as the <tt>./run</tt> process dies) or
+really down (when the <tt>./finish</tt> process has also died). </li>
<li> Unfortunately, a daemon being <em>up</em> does not mean that it is
<em>ready</em>:
<a href="notifywhenup.html">this page</a> goes into the details. s6
@@ -358,11 +359,13 @@ it. </li>
</ul>
<p>
- For now, s6 does not provide a complete dependency management framework,
+ s6 does not provide a complete dependency management framework,
i.e. a program to automatically start (or stop) a set of services in a
specific order - that order being automatically computed from a graph of
dependencies between services.
- That functionality is planned for a future version of s6.
+ That functionality belongs to a <em>service manager</em>, and is
+implemented for instance in the
+<a href="http://skarnet.org/software/s6-rc/">s6-rc</a> package.
</p>
<h2> Additional utilities </h2>
diff --git a/doc/servicedir.html b/doc/servicedir.html
@@ -139,6 +139,30 @@ service is said to be <em>logged</em>; the <em>foo</em><tt>/log</tt> service is
<em>foo</em><tt>/log/log</tt> exists, nothing special happens. </li>
</ul>
+ <h3> Stability </h3>
+
+<p>
+ With the evolution of s6, it is possible that
+ <a href="s6-supervise.html">s6-supervise</a> configuration uses more and more
+files in the service directory. The
+<tt>notification-fd</tt> and <tt>timeout-finish</tt> files, for
+instance, have appeared in 2015; users who previously had files
+with the same name had to change them. There is no guarantee that
+<a href="s6-supervise.html">s6-supervise</a> will not use additional
+names in the service directory in the same fashion in the future.
+</p>
+
+<p>
+ There <em>is</em>, however, a guarantee that
+<a href="s6-supervise.html">s6-supervise</a> will never touch
+subdirectories named <tt>data</tt> or <tt>env</tt>. So if you
+need to store user information in the service directory with
+the guarantee that it will never be mistaken for a configuration
+file, no matter the version of s6, you should store that information in
+the <tt>data</tt> or <tt>env</tt> subdirectories of the service
+directory.
+</p>
+
<a name="where">
<h2> Where to store my service directories ? </h2>
</a>
@@ -184,7 +208,9 @@ amounts to less than a megabyte of data - sometimes much less. Knowing this,
it makes sense to have an image of your service directories in the
(possibly read-only) root filesystem, and <em>copy it all</em>
to a scan directory located on a RAM filesystem that is mounted at boot time.
-This is the setup I recommend. It has several advantages:
+This is the setup I recommend, and the one used by the
+<a href="http://skarnet.org/software/s6-rc/">s6-rc</a> service manager.
+ It has several advantages:
<ul>
<li> Your service directories reside on the root filesystem and are not
modified during the lifetime of the system. If your root filesystem is