OSDN Git Service

update to lfsbook 6.8.ja
[linuxjf/JF.git] / docs / LFS-BOOK / chapter06 / sysvinit.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 xmlns="http://www.w3.org/1999/xhtml">
4   <head>
5     <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
6     <title>
7       6.57. Sysvinit-2.88dsf
8     </title>
9     <link rel="stylesheet" href="../stylesheets/lfs.css" type="text/css" />
10     <meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
11     <link rel="stylesheet" href="../stylesheets/lfs-print.css" type=
12     "text/css" media="print" />
13   </head>
14   <body class="lfs" id="lfs-6.8">
15     <div class="navheader">
16       <h4>
17         Linux From Scratch - Version 6.8
18       </h4>
19       <h3>
20         第6章 基本的なソフトウェアのインストール
21       </h3>
22       <ul>
23         <li class="prev">
24           <a accesskey="p" href="sysklogd.html" title=
25           "Sysklogd-1.5">前のページ</a>
26           <p>
27             Sysklogd-1.5
28           </p>
29         </li>
30         <li class="next">
31           <a accesskey="n" href="tar.html" title="Tar-1.25">次のページ</a>
32           <p>
33             Tar-1.25
34           </p>
35         </li>
36         <li class="up">
37           <a accesskey="u" href="chapter06.html" title=
38           "第6章 基本的なソフトウェアのインストール">上に戻る</a>
39         </li>
40         <li class="home">
41           <a accesskey="h" href="../index.html" title=
42           "Linux From Scratch - Version 6.8">ホーム</a>
43         </li>
44       </ul>
45     </div>
46     <div class="wrap" lang="ja" xml:lang="ja">
47       <h1 class="sect1">
48         <a id="ch-system-sysvinit" name="ch-system-sysvinit"></a>6.57.
49         Sysvinit-2.88dsf
50       </h1>
51       <div class="package" lang="ja" xml:lang="ja">
52         <p>
53           Sysvinit パッケージは、システムの起動、実行、シャットダウンを制御するプログラムを提供します。
54         </p>
55         <div class="segmentedlist">
56           <div class="seglistitem">
57             <div class="seg">
58               <strong class="segtitle">概算ビルド時間:</strong> <span class=
59               "segbody">0.1 SBU 以下</span>
60             </div>
61             <div class="seg">
62               <strong class="segtitle">必要ディスク容量:</strong> <span class=
63               "segbody">1 MB</span>
64             </div>
65           </div>
66         </div>
67       </div>
68       <div class="installation" lang="ja" xml:lang="ja">
69         <h2 class="sect2">
70           6.57.1. Sysvinit のインストール
71         </h2>
72         <p>
73           ランレベルが変更される時 (例えばシステムが停止する時) <span class=
74           "command"><strong>init</strong></span> コマンドは各種のプロセスに対して停止シグナル
75           (termination signals) を送信します。 ただしその対象は <span class=
76           "command"><strong>init</strong></span>
77           プログラム自身が起動したプロセスであり、新たなランレベルでは起動しないプロセスです。 一方で <span class=
78           "command"><strong>init</strong></span> コマンドが出力するメッセージは
79           「<span class="quote">Sending processes the TERM signal</span>」
80           (プロセスに対して TERM シグナルを送信します) というものです。
81           このメッセージは、その時点にて稼動中の全プロセスに対してシグナルを送信しているかのように誤解してしまいます。
82           これを正すためにソースを修正して 「<span class="quote">Sending processes configured
83           via /etc/inittab the TERM signal</span>」 (/etc/inittab
84           で設定されているプロセスに対して TERM シグナルを送信します) というメッセージに置き換えます。
85         </p>
86         <pre class="userinput">
87 <kbd class=
88 "command">sed -i 's@Sending processes@&amp; configured via /etc/inittab@g' \
89     src/init.c</kbd>
90 </pre>
91         <p>
92           <span class="command"><strong>wall</strong></span> コマンドは Util-linux
93           パッケージにおいてメンテナンスされており、既にインストールが出来ています。 そこで Sysvinit が提供する
94           <span class="command"><strong>wall</strong></span> コマンドはインストールせず、その
95           man ページもインストールしないようにします。
96         </p>
97         <pre class="userinput">
98 <kbd class="command">sed -i -e 's/utmpdump wall/utmpdump/' \
99        -e 's/mountpoint.1 wall.1/mountpoint.1/' src/Makefile</kbd>
100 </pre>
101         <p>
102           パッケージをコンパイルします。
103         </p>
104         <pre class="userinput">
105 <kbd class="command">make -C src</kbd>
106 </pre>
107         <p>
108           本パッケージにテストスイートはありません。
109         </p>
110         <p>
111           パッケージをインストールします。
112         </p>
113         <pre class="userinput">
114 <kbd class="command">make -C src install</kbd>
115 </pre>
116       </div>
117       <div class="configuration" lang="ja" xml:lang="ja">
118         <h2 class="sect2">
119           <a id="conf-sysvinit" name="conf-sysvinit"></a>6.57.2. Sysvinit の設定
120         </h2>
121         <p>
122           以下のコマンドを実行して新しい <code class="filename">/etc/inittab</code>
123           ファイルを生成します。
124         </p>
125         <pre class="userinput">
126 <kbd class="command">cat &gt; /etc/inittab &lt;&lt; "EOF"
127 <code class="literal"># Begin /etc/inittab
128
129 id:3:initdefault:
130
131 si::sysinit:/etc/rc.d/init.d/rc sysinit
132
133 l0:0:wait:/etc/rc.d/init.d/rc 0
134 l1:S1:wait:/etc/rc.d/init.d/rc 1
135 l2:2:wait:/etc/rc.d/init.d/rc 2
136 l3:3:wait:/etc/rc.d/init.d/rc 3
137 l4:4:wait:/etc/rc.d/init.d/rc 4
138 l5:5:wait:/etc/rc.d/init.d/rc 5
139 l6:6:wait:/etc/rc.d/init.d/rc 6
140
141 ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now
142
143 su:S016:once:/sbin/sulogin
144
145 1:2345:respawn:/sbin/agetty tty1 9600
146 2:2345:respawn:/sbin/agetty tty2 9600
147 3:2345:respawn:/sbin/agetty tty3 9600
148 4:2345:respawn:/sbin/agetty tty4 9600
149 5:2345:respawn:/sbin/agetty tty5 9600
150 6:2345:respawn:/sbin/agetty tty6 9600
151
152 # End /etc/inittab</code>
153 EOF</kbd>
154 </pre>
155       </div>
156       <div class="content" lang="ja" xml:lang="ja">
157         <h2 class="sect2">
158           <a id="contents-sysvinit" name="contents-sysvinit"></a>6.57.3.
159           Sysvinit の構成
160         </h2>
161         <div class="segmentedlist">
162           <div class="seglistitem">
163             <div class="seg">
164               <strong class="segtitle">インストールプログラム:</strong> <span class=
165               "segbody">bootlogd, fstab-decode, halt, init, killall5, last,
166               lastb (last へのリンク), mesg, mountpoint, pidof (killall5 へのリンク),
167               poweroff (halt へのリンク), reboot (halt へのリンク), runlevel, shutdown,
168               sulogin, telinit (init へのリンク), utmpdump</span>
169             </div>
170           </div>
171         </div>
172         <div class="variablelist">
173           <h3>
174             概略説明
175           </h3>
176           <table border="0">
177             <col align="left" valign="top" />
178             <tbody>
179               <tr>
180                 <td>
181                   <p>
182                     <a id="bootlogd" name="bootlogd"></a><span class=
183                     "term"><span class=
184                     "command"><strong>bootlogd</strong></span></span>
185                   </p>
186                 </td>
187                 <td>
188                   <p>
189                     ブート時のメッセージをログファイルに出力します。
190                   </p>
191                 </td>
192               </tr>
193               <tr>
194                 <td>
195                   <p>
196                     <a id="fstab-decode" name="fstab-decode"></a><span class=
197                     "term"><span class=
198                     "command"><strong>fstab-decode</strong></span></span>
199                   </p>
200                 </td>
201                 <td>
202                   <p>
203                     fstab 形式の (fstab-encoded の) 引数とともにコマンドを実行します。
204                   </p>
205                 </td>
206               </tr>
207               <tr>
208                 <td>
209                   <p>
210                     <a id="halt" name="halt"></a><span class=
211                     "term"><span class=
212                     "command"><strong>halt</strong></span></span>
213                   </p>
214                 </td>
215                 <td>
216                   <p>
217                     ランレベルが既に 0 ではない通常の起動状態の場合に <span class=
218                     "command"><strong>shutdown</strong></span> をオプション
219                     <em class="parameter"><code>-h</code></em> をつけて実行します。
220                     そしてカーネルに対してシステム停止を指示します。 システムが停止される状況は <code class=
221                     "filename">/var/log/wtmp</code> ファイルに記録されます。
222                   </p>
223                 </td>
224               </tr>
225               <tr>
226                 <td>
227                   <p>
228                     <a id="init" name="init"></a><span class=
229                     "term"><span class=
230                     "command"><strong>init</strong></span></span>
231                   </p>
232                 </td>
233                 <td>
234                   <p>
235                     カーネルがハードウェアを初期化した後に、最初に起動するプロセスです。
236                     ブート処理がこのプロセスに引き継がれ、指示されたプロセスをすべて起動していきます。
237                   </p>
238                 </td>
239               </tr>
240               <tr>
241                 <td>
242                   <p>
243                     <a id="killall5" name="killall5"></a><span class=
244                     "term"><span class=
245                     "command"><strong>killall5</strong></span></span>
246                   </p>
247                 </td>
248                 <td>
249                   <p>
250                     プロセスすべてに対してシグナルを送信します。 ただし自分のセッション内の起動プロセスは除きます。
251                     つまり本コマンドを実行したスクリプトは停止されません。
252                   </p>
253                 </td>
254               </tr>
255               <tr>
256                 <td>
257                   <p>
258                     <a id="last" name="last"></a><span class=
259                     "term"><span class=
260                     "command"><strong>last</strong></span></span>
261                   </p>
262                 </td>
263                 <td>
264                   <p>
265                     ユーザーの最新のログイン (ログアウト) の情報を表示します。 これは <code class=
266                     "filename">/var/log/wtmp</code> ファイルの終わりから調べているものです。
267                     またシステムブート、シャットダウン、ランレベルの変更時の情報も示します。
268                   </p>
269                 </td>
270               </tr>
271               <tr>
272                 <td>
273                   <p>
274                     <a id="lastb" name="lastb"></a><span class=
275                     "term"><span class=
276                     "command"><strong>lastb</strong></span></span>
277                   </p>
278                 </td>
279                 <td>
280                   <p>
281                     ログインに失敗した情報を表示します。 これは <code class=
282                     "filename">/var/log/btmp</code> に記録されています。
283                   </p>
284                 </td>
285               </tr>
286               <tr>
287                 <td>
288                   <p>
289                     <a id="mesg" name="mesg"></a><span class=
290                     "term"><span class=
291                     "command"><strong>mesg</strong></span></span>
292                   </p>
293                 </td>
294                 <td>
295                   <p>
296                     現在のユーザーの端末に対して、他のユーザーがメッセージ送信できるかどうかを制御します。
297                   </p>
298                 </td>
299               </tr>
300               <tr>
301                 <td>
302                   <p>
303                     <a id="mountpoint" name="mountpoint"></a><span class=
304                     "term"><span class=
305                     "command"><strong>mountpoint</strong></span></span>
306                   </p>
307                 </td>
308                 <td>
309                   <p>
310                     指定されたディレクトリがマウントポイントであるかどうかをチェックします。
311                   </p>
312                 </td>
313               </tr>
314               <tr>
315                 <td>
316                   <p>
317                     <a id="pidof" name="pidof"></a><span class=
318                     "term"><span class=
319                     "command"><strong>pidof</strong></span></span>
320                   </p>
321                 </td>
322                 <td>
323                   <p>
324                     指定されたプログラムの PID を表示します。
325                   </p>
326                 </td>
327               </tr>
328               <tr>
329                 <td>
330                   <p>
331                     <a id="poweroff" name="poweroff"></a><span class=
332                     "term"><span class=
333                     "command"><strong>poweroff</strong></span></span>
334                   </p>
335                 </td>
336                 <td>
337                   <p>
338                     カーネルに対してシステムの停止を指示し、コンピュータの電源を切ります。 (<span class=
339                     "command"><strong>halt</strong></span> を参照してください。)
340                   </p>
341                 </td>
342               </tr>
343               <tr>
344                 <td>
345                   <p>
346                     <a id="reboot" name="reboot"></a><span class=
347                     "term"><span class=
348                     "command"><strong>reboot</strong></span></span>
349                   </p>
350                 </td>
351                 <td>
352                   <p>
353                     カーネルに対してシステムの再起動を指示します。 (<span class=
354                     "command"><strong>halt</strong></span> を参照してください。)
355                   </p>
356                 </td>
357               </tr>
358               <tr>
359                 <td>
360                   <p>
361                     <a id="runlevel" name="runlevel"></a><span class=
362                     "term"><span class=
363                     "command"><strong>runlevel</strong></span></span>
364                   </p>
365                 </td>
366                 <td>
367                   <p>
368                     現在のランレベルと直前のランレベルを表示します。 最新のランレベルは <code class=
369                     "filename">/var/run/utmp</code> ファイルに記録されています。
370                   </p>
371                 </td>
372               </tr>
373               <tr>
374                 <td>
375                   <p>
376                     <a id="shutdown" name="shutdown"></a><span class=
377                     "term"><span class=
378                     "command"><strong>shutdown</strong></span></span>
379                   </p>
380                 </td>
381                 <td>
382                   <p>
383                     システムの終了を安全に行います。
384                     その際にはプロセスすべてへのシグナル送信を行い、ログインユーザーへの通知も行います。
385                   </p>
386                 </td>
387               </tr>
388               <tr>
389                 <td>
390                   <p>
391                     <a id="sulogin" name="sulogin"></a><span class=
392                     "term"><span class=
393                     "command"><strong>sulogin</strong></span></span>
394                   </p>
395                 </td>
396                 <td>
397                   <p>
398                     <code class="systemitem">root</code> ユーザーでのログインを行います。 通常は
399                     <span class="command"><strong>init</strong></span>
400                     が起動するもので、システムがシングルユーザーモードで起動する際に利用されます。
401                   </p>
402                 </td>
403               </tr>
404               <tr>
405                 <td>
406                   <p>
407                     <a id="telinit" name="telinit"></a><span class=
408                     "term"><span class=
409                     "command"><strong>telinit</strong></span></span>
410                   </p>
411                 </td>
412                 <td>
413                   <p>
414                     <span class="command"><strong>init</strong></span>
415                     に対してランレベルの変更を指示します。
416                   </p>
417                 </td>
418               </tr>
419               <tr>
420                 <td>
421                   <p>
422                     <a id="utmpdump" name="utmpdump"></a><span class=
423                     "term"><span class=
424                     "command"><strong>utmpdump</strong></span></span>
425                   </p>
426                 </td>
427                 <td>
428                   <p>
429                     指定されたログファイル内の情報を分かりやすく表示します。
430                   </p>
431                 </td>
432               </tr>
433             </tbody>
434           </table>
435         </div>
436       </div>
437     </div>
438     <div class="navfooter">
439       <ul>
440         <li class="prev">
441           <a accesskey="p" href="sysklogd.html" title=
442           "Sysklogd-1.5">前のページ</a>
443           <p>
444             Sysklogd-1.5
445           </p>
446         </li>
447         <li class="next">
448           <a accesskey="n" href="tar.html" title="Tar-1.25">次のページ</a>
449           <p>
450             Tar-1.25
451           </p>
452         </li>
453         <li class="up">
454           <a accesskey="u" href="chapter06.html" title=
455           "第6章 基本的なソフトウェアのインストール">上に戻る</a>
456         </li>
457         <li class="home">
458           <a accesskey="h" href="../index.html" title=
459           "Linux From Scratch - Version 6.8">ホーム</a>
460         </li>
461       </ul>
462     </div>
463   </body>
464 </html>