aboutsummaryrefslogtreecommitdiff
path: root/ja_JP.eucJP/man/man8/rc.8
blob: cfaa480ffce333d9f322c96dfe64ef728e5bbd95 (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
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
.\" Copyright (c) 1980, 1991, 1993
.\"	The Regents of the University of California.  All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\" 3. All advertising materials mentioning features or use of this software
.\"    must display the following acknowledgement:
.\"	This product includes software developed by the University of
.\"	California, Berkeley and its contributors.
.\" 4. Neither the name of the University nor the names of its contributors
.\"    may be used to endorse or promote products derived from this software
.\"    without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\"     @(#)rc.8	8.2 (Berkeley) 12/11/93
.\" %FreeBSD: src/share/man/man8/rc.8,v 1.9.2.5 2001/08/17 13:08:50 ru Exp %
.\"
.\" $FreeBSD: doc/ja_JP.eucJP/man/man8/rc.8,v 1.13 2001/07/23 02:27:00 horikawa Exp $
.\"
.Dd December 11, 1993
.Dt RC 8
.Os BSD 4
.Sh 名称
.Nm rc
.Nd 自動リブート処理とデーモン起動のためのコマンドスクリプト
.Sh 書式
.Nm
.Nm rc.conf
.Nm rc.conf.local
.Nm rc.d
.Nm rc.serial
.Nm rc.pccard
.Nm rc.network
.Nm rc.firewall
.Nm rc.atm
.Nm rc.<arch>
.Nm rc.local
.Nm rc.shutdown
.Sh 解説
.Nm
は自動リブート処理を制御するコマンドスクリプト (他のスクリプトを呼びます) で、
.Nm rc.local
は特定サイトに特化したコマンドを記述するスクリプトです。
今日では、
典型的には /usr/local/etc/rc.d の機構が rc.local の代りに使用されます。
しかしながら、
rc.local を使用したいのであれば /etc/rc は未だこれをサポートしています。
この場合、rc.local が /etc/rc.conf を読み取るようにしてから、
あなたのシステム特有の更なるカスタムスタートアップコードを
rc.local に追加してください。
.Nm rc.conf
は rc ファイル群から参照されるグローバルなシステム構成情報を持ち、
.Nm rc.conf.local
はローカルなシステム構成情報を持ちます。
.Xr rc.conf 5
を参照してください。
.Pp
.Nm rc.d
ディレクトリは、ブート時およびシャットダウン時に
自動的に実行されるスクリプトを保持します。
ブート時には、指定されたディレクトリは、
.Nm rc.local
の実行直後に処理されます
(処理対象ディレクトリの指定方法の詳細は後述します)。
シャットダウン時には、ディレクトリは
.Nm rc.shutdown
が処理します。
各ディレクトリ内のスクリプトには、次の重要事項が適用されます:
.Pp
.Bl -bullet -compact
.It
スクリプトは、
.Xr basename 1
がシェルグロブパターン
.Pa *.sh
にマッチし、実行可能である場合のみ、実行されます。
このディレクトリ中の他のファイルやディレクトリは、黙って無視されます。
.It
ブート時にスクリプトを実行するとき、文字列
.Dq start
が、最初かつ唯一の引数として渡されます。
シャットダウン時には、文字列
.Dq stop
が、最初かつ唯一の引数として渡されます。
すべての
.Nm rc.d
スクリプトは、これら引数を適切に扱えるものであると期待されます。
指定時に動作不要の場合
(ブート時にもシャットダウン時にも)、
スクリプトは成功裏に終了し、エラーメッセージを出力してはなりません。
.It
各ディレクトリ内のスクリプトは、辞書順に処理されます。
特定の順序が必要な場合には、
既存のファイル名の前に番号を付けると良いかもしれません。
例えば、
.Pa 100.foo
は
.Pa 200.bar
の前に実行されますが、番号を前に付けないと逆の順番になります。
.El
.Pp
典型的な各スクリプトの出力は、1 個の空白文字の後に、
起動または終了されたソフトウェアパッケージ名が続き、
最後には改行文字は
.Em 付きません (
.Sx 使用例
の節を見てください)。
.Pp
複数の
.Nm rc.d
ディレクトリから、システム起動スクリプトを実行可能です。
デフォルトの位置は
.Pa /usr/local/etc/rc.d
と
.Pa /usr/X11R6/etc/rc.d
ですが、
.Va local_startup
.Xr rc.conf 5
変数で変更可能です。
.Pp
.Nm rc.shutdown
は、システムシャットダウンにおいて実行されることが必要なコマンドを持つ
コマンドスクリプトです。
.Pp
自動リブート処理の進行中、
.Nm
は
.Em autoboot
を引数として起動されます。
.Nm
はその最初の部分で
.Xr fsck 8
を
.Fl p
オプション付きで実行し、
前回のシステムシャットダウンによる些細なディスク不整合を全て「修繕」し、
ハードウェアあるいはソフトウェアの障害から生じた
重大なディスク不整合を調べます。
この自動チェックと修繕がうまくいくと、
.Nm
の第二部が開始します。
.Pp
.Nm
の第二部は
自動リブート処理が成功した後および
シングルユーザモードのシェルが終了して
.Nm
が起動された場合(
.Xr init 8
参照)に実行されます。
この第二部はシステムの全てのデーモンを起動し、
エディタファイルを保存し、
一時ディレクトリ
.Pa /tmp
をクリアします。
.Pp
.Nm rc.serial
は、シリアルデバイスの特殊な構成があればそれを設定するために使用します。
.Pp
.Nm rc.pccard
は PC カードを有効にするために使用します。
.Pp
.Nm rc.network
はネットワークを起動するために使用します。
ネットワークの起動は 3 パスで行われます。
最初のパスは、ホスト名とドメイン名を設定し、
ネットワークインタフェースを構成し、
IP ファイアウォール規則があれば有効にし、ルーティングを有効にします。
第 2 パスは、ほとんどのネットワーク関連デーモンの起動を行います。
第 3 パスは、NFS, amd, rwhod, Kerberos, マルチキャストルーティングデーモンの
起動を行います。
.Pp
.Nm rc.firewall
は、カーネルベースのファイアウォールサービスの規則の設定に使用されます。
.Pp
.Bl -tag -width "fBfilename" -compact -offset indent
.It open
全入力を許可します。
.It client
このマシンのみを保護しようとします。
.It simple
全ネットワークを保護しようとします。
.It closed
lo0 以外の全 IP サービスを無効にします。
.It UNKNOWN
ファイアウォール規則のロードを無効にします。
.It filename
指定したファイル名の規則をロードします (フルパス指定が必要)。
.El
.Pp
.Nm rc.atm
は ATM ネットワークインタフェースを設定するために使用されます。
インタフェースは 3 つのパスで設定されます。
第 1 のパスでは、インタフェースの初期設定をおこないます。
第 2 のパスでは、インタフェースの設定が終り、
PVC および永続的な ATMARP エントリを定義します。
第 3 のパスでは、任意の ATM デーモンを起動します。
.Pp
.Nm rc.<arch>
はアーキテクチャ依存のプログラムを起動します。
.Pp
.Nm rc.local
が起動されるのは、上記スクリプトの後ですが、残りの
.Nm
ファイルが完了する前です。
デフォルトインストールでは、
.Nm rc.local
は存在しませんが、システム管理者がこのファイルを生成すれば、
その内容が実行されます。
.Pp
伝統に従い、スタートアップファイルは
.Pa /etc
ディレクトリに置かれます。
.Sh 使用例
ブート時にデーモンを起動し、シャットダウン時にこれを終了する、
.Nm rc.d
スクリプトの仮想的な例を示します。
.Bd -literal -offset indent
#!/bin/sh -
#
#    foobar パッケージの初期化/シャットダウンスクリプト

case "$1" in
start)
	/usr/local/sbin/foo -d && echo -n ' foo'
	;;
stop)
	kill `cat /var/run/foo.pid` && echo -n ' foo'
	;;
*)
	echo "unknown option: $1 - should be 'start' or 'stop'" >&2
	;;
esac
.Ed
.Pp
シャットダウン時には
.Xr init 8
が全プロセスを終了させるので、明示的な
.Xr kill 1
は不要ですが、これが含まれることが多いです。
.Sh 関連項目
.Xr kill 1 ,
.Xr rc.conf 5 ,
.Xr init 8 ,
.Xr reboot 8 ,
.Xr savecore 8
.Sh 歴史
.Nm
コマンドは
.Bx 4.0
で登場しました。