]> pere.pagekite.me Git - homepage.git/blob - blog/Upstart_or_sysvinit___as_init_d_scripts_see_it.html
0192cffad8c58fa4c049d9d72a2bcc4c863d93e3
[homepage.git] / blog / Upstart_or_sysvinit___as_init_d_scripts_see_it.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html>
4 <head>
5 <title>Petter Reinholdtsen: Upstart or sysvinit - as init.d scripts see it</title>
6 <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/style.css">
7 </head>
8 <body>
9
10 <div class="title">
11 <h1>
12 <a href="http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen</a>
13
14 </h1>
15
16 </div>
17
18
19 <div class="entry">
20 <div class="title">Upstart or sysvinit - as init.d scripts see it</div>
21 <div class="date">2010-06-06 23:55</div>
22 <div class="body">
23 <p>If Debian is to migrate to upstart on Linux, I expect some init.d
24 scripts to migrate (some of) their operations to upstart job while
25 keeping the init.d for hurd and kfreebsd. The packages with such
26 needs will need a way to get their init.d scripts to behave
27 differently when used with sysvinit and with upstart. Because of
28 this, I had a look at the environment variables set when a init.d
29 script is running under upstart, and when it is not.</p>
30
31 <p>With upstart, I notice these environment variables are set when a
32 script is started from rcS.d/ (ignoring some irrelevant ones like
33 COLUMNS):</p>
34
35 <blockquote><pre>
36 DEFAULT_RUNLEVEL=2
37 previous=N
38 PREVLEVEL=
39 RUNLEVEL=
40 runlevel=S
41 UPSTART_EVENTS=startup
42 UPSTART_INSTANCE=
43 UPSTART_JOB=rc-sysinit
44 </pre></blockquote>
45
46 <p>With sysvinit, these environment variables are set for the same
47 script.</p>
48
49 <blockquote><pre>
50 INIT_VERSION=sysvinit-2.88
51 previous=N
52 PREVLEVEL=N
53 RUNLEVEL=S
54 runlevel=S
55 </pre></blockquote>
56
57 <p>The RUNLEVEL and PREVLEVEL environment variables passed on from
58 sysvinit are not set by upstart. Not sure if it is intentional or not
59 to not be compatible with sysvinit in this regard.</p>
60
61 <p>For scripts needing to behave differently when upstart is used,
62 looking for the UPSTART_JOB environment variable seem to be a good
63 choice.</p>
64 </div>
65
66 <div class="tags">Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>.</div>
67
68 </div>
69
70
71
72
73
74
75 <div id="sidebar">
76
77 <h2>Archive</h2>
78 <ul>
79
80 <li>2010
81 <ul>
82
83 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
84
85 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
86
87 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
88
89 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
90
91 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
92
93 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (6)</a></li>
94
95 </ul></li>
96
97 <li>2009
98 <ul>
99
100 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
101
102 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
103
104 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
105
106 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
107
108 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
109
110 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
111
112 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
113
114 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
115
116 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
117
118 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
119
120 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
121
122 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
123
124 </ul></li>
125
126 <li>2008
127 <ul>
128
129 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
130
131 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
132
133 </ul></li>
134
135 </ul>
136
137
138
139 <h2>Tags</h2>
140 <ul>
141
142 <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (11)</a></li>
143
144 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
145
146 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
147
148 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (24)</a></li>
149
150 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (25)</a></li>
151
152 <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (35)</a></li>
153
154 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (1)</a></li>
155
156 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (6)</a></li>
157
158 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (2)</a></li>
159
160 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (1)</a></li>
161
162 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
163
164 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (5)</a></li>
165
166 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (67)</a></li>
167
168 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (75)</a></li>
169
170 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (12)</a></li>
171
172 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (11)</a></li>
173
174 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (10)</a></li>
175
176 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
177
178 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (8)</a></li>
179
180 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (3)</a></li>
181
182 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (12)</a></li>
183
184 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (1)</a></li>
185
186 <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (10)</a></li>
187
188 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (1)</a></li>
189
190 <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (6)</a></li>
191
192 </ul>
193
194 </div>
195 </body>
196 </html>