summary refs log tree commit diff
path: root/doc/upgrade.html
blob: 7abbaffb8486ab90ab927e4370450402241f0668 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<title>runit - upgrading from previous versions</title>
</head>
<body>
<a href="http://smarden.org/pape/">G. Pape</a><br>
<a href="index.html">runit</a><br>
<hr>
<h1>runit - upgrading from previous versions</h1>
<hr>

<h3>0.9.x to 0.10.0</h3>
No further action from you is required.
<h3>0.8.0 or 0.8.1 to 0.9.x</h3>
The <a href="svlogd.8.html">svlogd</a> program is new.
<i>svlogd</i> is a service logging daemon designed to be run from
<tt>log/run</tt> files, similar to
<a href="http://cr.yp.to/daemontools/multilog.html">multilog</a>.
The <i>runsvdir</i> program no longer propagates the TERM signal to the
<i>runsv</i> processes if it receives one, but exits immediately, and
<i>runsvdir</i> now supports handling of the HANGUP signal, see the
<a href="runsvdir.8.html">man page</a> for details.
<a href="svwaitdown.8.html">svwaitdown</a> has changed to additionally send
the <tt>down</tt> command to the <i>services</i> it works on, if not yet
done.
<h3>0.7.x to 0.8.0 or 0.8.1</h3>
With this version <i>runit</i>'s handling of its magic files has changed
slightly for better support of read-only root filesystems.
You should adapt stages 1 and 3 and <tt>ctrlaltdel</tt> to set file
permissions on the magic files instead of creating and removing them; please
take a look at the examples in <tt>/package/admin/runit/etc/</tt>.
<p>
The <a href="runit.8.html">runit</a> program now calls the <tt>reboot()</tt>
function if possible, and if stage 3 didn't take care of this.
<h3>0.6.0 to 0.7.0 or 0.7.1 or 0.7.2</h3>
This version introduces runlevel support with the new
<a href="runsvchdir.8.html">runsvchdir</a> program. See the
<a href="runlevels.html">runlevels documentation</a> for more information.
<p>
The <a href="runsvdir.8.html">runsvdir</a> and
<a href="runsv.8.html">runsv</a> programs have changed and should be
restarted. If you want to switch runlevels, <tt>runsvdir</tt> must be
restarted. This is done on the next reboot or by following these steps:
<p>
<ul>
  <li>
Login on console 5. Bring all services other than the <tt>getty-5</tt>
service down:
<pre>
 # cd /service
 # for i in *; do if test "$i" != getty-5; then svc -d $i; fi; done
</pre>
  <li>
Check for the services being down:
<pre>
 # svstat /service/*
</pre>
  <li>
If all services other than the <tt>getty-5</tt> service are down, kill
<tt>runsvdir</tt> by sending it a HUP signal:
<pre>
 # kill -HUP &lt;pid_of_runsvdir&gt;
</pre>
Replace <tt>&lt;pid_of_runsvdir&gt;</tt> with the pid of <tt>runsvdir</tt>.
The <tt>runit</tt> program starts the new <tt>runsvdir</tt> program now,
which starts the new <tt>runsv</tt> processes.
</ul>
<h3>0.5.0 to 0.6.0</h3>
There are two new programs, <a href="runsvdir.8.html">runsvdir</a> and
<a href="runsv.8.html">runsv</a>, which replace the
<tt>svscanboot</tt>/<tt>svscan</tt>/<tt>readproctitle</tt>/<tt>supervise</tt>
combination of daemontools. Please adapt <tt>runit</tt>'s stage 2
(<tt>/etc/runit/2</tt>) to use <tt>runsvdir</tt> instead of
<tt>svscanboot</tt>; see the examples in <tt>/package/admin/runit/etc/</tt>.
The change takes effect on the next reboot or if you stop all services and
kill <tt>svscan</tt> and <tt>readproctitle</tt>. <tt>runit</tt> then
automatically restarts stage 2.
<p>
The <a href="svwaitdown.8.html">svwaitdown</a> program has new options: -k
and -x. They are used in <tt>runit</tt>'s stage 3 (<tt>/etc/runit/3</tt>).
Please adapt your <tt>/etc/runit/3</tt> script after the changes to stage 2
have taken effect (<tt>runsvdir</tt> must run instead of
<tt>svscanboot</tt>); see the examples in
<tt>/package/admin/runit/etc/</tt>.
<h3>0.4.1 to 0.5.0</h3>
There is a new program: <a href="utmpset.8.html">utmpset</a>. This program
is used in the getty run scripts to enable local login accounting. You might
want to adapt your getty run scripts <tt>/service/getty-*/run</tt>, see the
examples in <tt>/package/admin/runit/etc/</tt>. 
<hr>
<address><a href="mailto:pape@smarden.org">
Gerrit Pape &lt;pape@smarden.org&gt;
</a></address>
<small>$Id$</small>
</body>
</html>