FreeBSD 日本語マニュアル検索 (jman/japropos/jwhatis)


日本語 man コマンド類 (ja-man-1.1j_5) と日本語 man ドキュメント (ja-man-doc-5.4 (5.4-RELEASE 用) など) をインストールすると、以下のような man コマンド閲覧、キーワード検索が コンソールからできるようになります。

4.11-RELEASE-K, 5.4-RELEASE-K, 5.5-RELEASE-K, 6.0-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K, 12.1-RELEASE-K は、 プライベート版 (小金丸が編集してまとめたもの) ですが、 より多くの翻訳したファイルが含まれています。 (5.4-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K から 12.3-RELEASE-K, 13.0-RELEASE-K から 13.2-RELEASE-K は、全翻訳済み)

13.3-STABLE-K, 15.0-CURRENT-K は現在、作成中で日々更新されています。



検索コマンド: man apropos whatis
コマンド/キーワード:
日本語マニュアル RELEASE :
セクション:
Table of Contents
名称 | 書式 | 解説 | 興味あるスクリプト | 関連ファイル | 使用例 | 関連項目 | 歴史
RC(8)                  FreeBSD システム管理者マニュアル                  RC(8)

名称
     rc -- 自動リブートとデーモン起動のためのコマンドスクリプト

書式
     rc
     rc.conf
     rc.conf.local
     rc.d/
     rc.firewall
     rc.local
     rc.shutdown
     rc.subr

解説
     rc ユーティリティは、init(8) によって呼び出された後に、自動ブート処理を制
     御するコマンドスクリプトです。rc.local スクリプトは、特有のサイトに特化し
     たコマンドを含んでいます。最近、典型的には、/usr/local/etc/rc.d/ のメカニ
     ズムが rc.local の代りに使用されますが、rc.local を使用したいのであれば、
     これは、まだサポートされています。この場合、/etc/rc.conf をソースする (読
     み込む) べきで、それは、利用者のシステム特有の追加されたカスタムスタート
     アップコードを含んでいます。しかしながら、rc.local を取り扱う最良の方法
     は、これを rc.d/ スタイルのスクリプトとして分割して、それらを
     /usr/local/etc/rc.d/ の下に置くことです。rc.conf ファイルは、スタートアッ
     プスクリプト群から参照されるグローバルなシステム構成情報を持ち、
     rc.conf.local は、ローカルなシステム構成情報を持ちます。更なる情報につい
     ては、rc.conf(5) を参照してください。

     rc.d/ ディレクトリは、ブート時とシャットダウン時に自動的に実行されるスク
     リプトを含んでいます。

     sysrc(8) コマンドは、システム設定ファイルを修正するために、スクリプト記述
     のインタフェースを提供しています。

   rc の操作
     1.   自動ブートであるなら、autoboot=yes を設定し、rc.d/ スクリプトが既に
          プロセスを実行しているかのチェックを行うことを防ぐ、(そのため、ブー
          トプロセスをスピードアップします) フラグ (rc_fast=yes) を有効にしま
          す。この rc_fast=yes スピードアップは、rc が、シングルユーザシェルを
          終了した後に開始されるとき、起こりません。

     2.   システムがディスクレスでブートするかどうか判断し、そうだとしたら、
          /etc/rc.initdiskless スクリプトを実行します。

     3.   使用する様々な rc.subr(8) シェル関数をロードするために /etc/rc.subr
          をソースし (読み込み) ます。

     4.   設定ファイルをロードします。

     5.   jail でブートしているかを確認し、``nojail'' (jail を許可しない) また
          は ``nojailvnet'' (vnet で有効にされた jail のみを許可する) を
          rcorder(8) でスキップするために「キーワード」のリストに追加します。

     6.   ファイル ${firstboot_sentinel} が存在しないなら、``firstboot'' を
          rcorder(8) でスキップするために「キーワード」のリストに追加します。

     7.   ``nostart'' 「キーワード」 (rcorder(8)-s フラグを参照) を持たな
          い /etc/rc.d/ 中のファイルの順序で rcorder(8) を起動します。

     8.   $1 を ``start'' に設定し、サブシェルのスクリプトをソース (読み込む)
          する、(rc.subr(8) の) run_rc_script() を使用して順番に各スクリプトを
          呼び出します。スクリプトに .sh 接尾辞があるなら、それは、現在のシェ
          ルに直接ソース (読み込まれます) されます。$early_late_divider の値で
          あるスクリプトが実行されたとき、処理を停止します。

     9.   (新しくマウントされたファイルシステムに置かれた場合に) ファイル
          ${firstboot_sentinel} が存在するかどうかを確かめ、適切にスキップする
          ために「キーワード」のリストを調節するために、再びチェックします。

     10.  $local_startup ディレクトリのスクリプトを含めているこの時、
          rcorder(8) を再実行します。$early_late_divider までのすべてを無視し
          て、次に、上に説明さているようにスクリプトの実行を開始します。

     11.  ファイル ${firstboot_sentinel} が存在するなら、それを削除します。(ス
          クリプトによって作成されたので) ファイル
          ${firstboot_sentinel}-reboot も存在するなら、それを削除し、リブート
          します。

   rc.shutdown の操作
     1.   使用する様々な rc.subr(8) シェル関数をロードするために /etc/rc.subr
          をソースし (読み込み) ます。

     2.   設定ファイルをロードします。

     3.   ファイルの順序と逆の ``shutdown'' KEYWORD (rcorder(8)-k フラグを
          参照) がある、/etc/rc.d/$local_startup ディレクトリのファイルを
          順序付けするために rcorder(8) を呼び出し、結果を変数に割り当てます。

     4.   $1 に ``stop'' を設定する (rc.subr(8) の) run_rc_script() を使用し
          て、順々に各スクリプトを呼び出し、サブシェルでスクリプトをソースし
          (読み込み) ます。スクリプトに .sh 接尾辞があるなら、それは、現在の
          シェルに直接ソースさ (読み込ま) れます。

   rc.d/ の内容
     rc.d/ は、/etc/rc.d/ に存在しています。次のファイルの命名規則は、rc.d/ で
     現在使用されています:

           ALLUPPERCASE  特定の操作が他の前に実行されることを保証するための
                         ``placeholder'' (プレースホールダ) であるスクリプト。
                         スタートアップの順序で、これらは、次の通りです:

                         NETWORKING  一般的なネットワーク設定を含んで、基本的
                                     なネットワークサービスが実行していること
                                     を保証します。

                         SERVERS     基本的なサービスは、下記の DAEMON によっ
                                     て必要とされるので、(nisdomain のような)
                                     早期に開始されるサービスのために基本的な
                                     サービスが存在することを保証します。

                         DAEMON      lpdntpd のようなすべての汎用のデーモ
                                     ンの前のチェックポイント。

                         LOGIN       ユーザの (cronsendmail) としてコマン
                                     ドを実行するサービスと同様に、ユーザログ
                                     インサービス (inetdsshd) の前のチェッ
                                     クポイント。

           foo.sh        サブシェルではなく、現在のシェルにソースさ (読み込ま)
                         れるスクリプトには、.sh 接尾辞があります。スクリプト
                         が行うなら、スタートアップのシーケンスが終了するよう
                         に、この使用には、特別な慎重さが必要です。

           bar           サブシェルでソースさ (読み込ま) れるスクリプト。その
                         ようなスクリプトが 0 以外の状態で終わるなら、ブート
                         は、停止しませんが、(rc.subr(8) から) stop_boot() 関
                         数を呼び出すことによって、必要なら、スクリプトは、
                         ブートを停止することができます。

     各スクリプトは、特に適切な ``PROVIDE'' エントリと ``REQUIRE'' と
     ``BEFORE'' キーワードを必要とするなら、rcorder(8) キーワード、含むべきで
     す。

     各スクリプトは、それが run_rc_command() 関数を使用するなら、自動的にサ
     ポートされる少なくとも次の引数をサポートすることが期待されています:

           start    サービスを開始します。これは、サービスが、rc.conf(5) に
                    よって指定されるように開始されることをチェックするべきで
                    す。また、サービスがすでに実行しているか調べ、そうであるな
                    ら、開始を拒否します。この後者のチェックは、システムがブー
                    トプロセスをスピードアップするために、マルチユーザモードに
                    直接開始するなら、標準の FreeBSD スクリプトによって実行さ
                    れません。forcestart が与えられるなら、rc.conf(5) チェック
                    は、無視し、とにかく開始します。

           stop     サービスが、rc.conf(5) によって指定されるように開始される
                    なら、サービスを停止します。これは、サービスが実行されいる
                    ことをチェックし、それが、そうではないなら、エラーを出すべ
                    きです。forcestop が与えられるなら、rc.conf(5) のチェック
                    を無視し、停止することを試みます。

           restart  stop を実行して、次に start します。

           status   スクリプトが、(1 回限りの操作を実行するのではなく) プロセ
                    スを開始するなら、プロセスの状態を表示します。そうでなけれ
                    ば、この引数をサポートする必要はありません。(実行している
                    なら) デフォルトは、プログラムのプロセス ID を表示すること
                    です。

           describe
                    スクリプトが行うことの短い説明を印刷 (表示) します。

           extracommands
                    スクリプトの非標準のコマンドを印刷 (表示) します。

           poll     スクリプトが、プロセス (1 度限りの操作を実行するのではな
                    く) を開始するなら、コマンドが終了することを待ちます。そう
                    でなければ、この引数をサポートする必要はありません。

           enabled  サービスが有効にされるなら、0 を返し、それがそうでないな
                    ら、1 を返します。このコマンドは、何も印刷 (表示) しませ
                    ん。

           rcvar    どの rc.conf(5) 変数が (もしあるなら) サービスのスタート
                    アップを制御するために使用されたかを表示します。

     スクリプトが追加のコマンドを実装しなければならないなら、それは、
     extra_commands 変数でそれらをリストし、コマンド名から構成される変数にそれ
     らのアクションを定義することができます (使用例のセクションを参照)。

     次のキーポイントは、/usr/local/etc/rc.d/ の古いスタイルのスクリプトに適用
     します:

     •   それらの basename(1) がシェルのグロブ (ファイル名置換) パターン *.sh
         と一致して、それらが実行可能である場合のみ、スクリプトは、実行されま
         す。ディレクトリ内に存在するあらゆる他のファイルまたはディレクトリ
         は、静かに無視されます。

     •   スクリプトがブート時に実行されるとき、それは、その最初で唯一の引数と
         して文字列 ``start'' を渡されます。シャットダウン時に、それは、その最
         初で唯一の引数として文字列 ``stop'' を渡されます。すべての rc.d/ スク
         リプトは、これらの引数を適切に処理することが期待されています。アク
         ションが、(ブート時またはシャットダウン時のいずれかの) 与えられた時間
         に取られる必要がないならば、スクリプトは、エラーメッセージを生成せず
         に、成功して終了するべきです。

     •   各ディレクトリ内のスクリプトは、辞書の順序で実行されます。特有の順序
         が必要とされるなら、数値は、既存のファイル名への接頭辞として使用され
         るので、例えば、100.foo は、200.bar の前に実行され、数値の接頭辞なし
         で逆になります。

     •   各スクリプトからの出力は、伝統的な空白文字で、後続する改行文字なし
         で、開始されるか、またはシャットダウンされるソフトウェアパッケージの
         名前が続きます (使用例セクションを参照)。

興味あるスクリプト
     自動再ブートが進行中のとき、rc は、引数 autoboot を付けて呼び出されます。
     /etc/rc.d/ から実行されるスクリプトの 1 つは、/etc/rc.d/fsck です。このス
     クリプトは、最後のシステムシャットダウンに起因しているささいな矛盾がある
     すべてのディスクを ``preen'' (着飾る) するためにオプション -p-F を付
     けて fsck(8) を実行します。これが失敗するなら、ハードウェア、またはソフト
     ウェア失敗によって引き起こされる重大な矛盾のチェック/修繕は、ブートプロセ
     スの終わりでバックグラウンドで実行されます。autoboot が設定されていないな
     ら、例えば、シングルユーザからマルチユーザモードに移行するとき、スクリプ
     トは、何もしません。

     /etc/rc.d/local スクリプトは、複数の rc.d/ ディレクトリからスクリプトを実
     行することができます。デフォルトの位置は、/usr/local/etc/rc.d/ を含んでい
     ますが、これらは、local_startup rc.conf(5) 変数で上書きすることができま
     す。

     /etc/rc.d/serial スクリプトは、シリアルデバイスのためのあらゆる特別な設定
     を設定するために使用されます。

     rc.firewall スクリプトは、カーネルベースのファイアウォールサービスのため
     の規則を設定するために使用されます。それには、いくつかの指定できるオプ
     ションがあります:

           open      は、誰でも許可します。
           client    は、まさにこのマシンを保護しようと試みます。
           simple    は、全体のネットワークを保護しようと試みます。
           closed    全体的に、lo0 インタフェースを通すことを除いて、IP サービ
                     スを無効にします。
           UNKNOWN   ファイアウォール規則のロードを無効にします。
           filename  は、与えられたファイル名の規則をロードします (フルパスが
                     要求されます)。

     /etc/rc.d/atm* スクリプトは、ATM ネットワークインタフェースを設定するため
     に使用されます。インタフェースは、3 つのパスで設定されます。最初のパス
     は、初期のインタフェース設定を実行します。2 番目のパスは、インタフェース
     設定を完了し、PVC と永久的な ATMARP エントリを定義します。3 番目のパス
     は、あらゆる ATM デーモンを開始します。

     ネットワーク関連デーモンを含んで、ほとんどのデーモンは、開始、停止とサー
     ビスの状態をチェックするために使用することができる、/etc/rc.d/ に、それら
     自体のスクリプトがあります。

     例えば、/etc/rc.d/apm のような、あらゆるアーキテクチャ特有のスクリプト
     は、デーモンを開始する前に、それらがそのアーキテクチャであることを特に
     チェックします。

     伝統に従い、すべてのスタートアップファイルは、/etc に存在します。

関連ファイル
     /etc/rc
     /etc/rc.conf
     /etc/rc.conf.local
     /etc/rc.d/
     /etc/rc.firewall
     /etc/rc.local
     /etc/rc.shutdown
     /etc/rc.subr
     /var/run/dmesg.boot               dmesg(8) は、rc プロセスが始まった直後
                                       の結果となります。カーネルの dmesg(8)
                                       バッファがもはやこの情報を持っていない
                                       ときに役に立ちます。

使用例
     次は、最小の rc.d/ スタイルのスクリプトです。ほとんどのスクリプトは、次と
     大差ないものを必要とします。

           #!/bin/sh
           #

           # PROVIDE: foo
           # REQUIRE: bar_service_required_to_precede_foo

           . /etc/rc.subr

           name="foo"
           rcvar=foo_enable
           command="/usr/local/bin/foo"

           load_rc_config $name
           run_rc_command "$1"

     特定のスクリプトは、強化された機能を提供したいかもしれません。ユーザは、
     追加のコマンドを通してこの機能にアクセスできます。スクリプトは、必要なも
     のとして多くのコマンドをリストして、定義します。

           #!/bin/sh
           #

           # PROVIDE: foo
           # REQUIRE: bar_service_required_to_precede_foo
           # BEFORE:  baz_service_requiring_foo_to_precede_it

           . /etc/rc.subr

           name="foo"
           rcvar=foo_enable
           command="/usr/local/bin/foo"
           extra_commands="nop hello"
           hello_cmd="echo Hello World."
           nop_cmd="do_nop"

           do_nop()
           {
                   echo "I do nothing."
           }

           load_rc_config $name
           run_rc_command "$1"

     シャットダウンですべてのプロセスが init(8) によって kill されるので、明示
     的な kill(1) は、不要ですが、しばしば含まれます。

関連項目
     kill(1), rc.conf(5), init(8), rc.subr(8), rcorder(8), reboot(8),
     savecore(8), sysrc(8)

歴史
     rc ユーティリティは、4.0BSD で登場しました。

FreeBSD 11.2                    April 23, 2016                    FreeBSD 11.2

Table of Contents

FreeBSD マニュアル検索