EN JA
RESCUE(8)
RESCUE(8) FreeBSD System Manager's Manual RESCUE(8)

名称

rescue/rescue にある緊急用ユーティリティ

解説

/rescue ディレクトリには、ひどく損傷したシステムを復旧するのに使うための、一般的なユーティリティのコレクションが納められています。 FreeBSD 5.2 から、ダイナミックリンクされたルートへと移行したため、アップグレードの失敗やディスクエラーのために、 /bin/sbin にある標準ツールが機能しなくなるという可能性が現実的となりました。 /rescue にあるツールはスタティックリンクされているため、損傷に対してより強くなっているはずです。しかし、スタティックリンクされているために、 /rescue にあるツールは、標準のユーティリティよりも機能が貧弱です。特にロケール、 pam(3)、及び nsswitch ライブラリを全面的に利用することはできません。

もしシステムが起動に失敗して、次のようなプロンプトを表示した場合:

Enter full pathname of shell or RETURN for /bin/sh:

まず最初に、標準のシェルである /bin/sh の起動を試みます。これに失敗したら、 rescue シェルである /rescue/sh の起動を試みます。システムを復旧するには、最初にルートパーティションを読み書き可で再マウントする必要があります。これは次の mount(8) コマンドで行うことが出来ます。

/rescue/mount -uw /

次の段階は、 /bin, /sbin, 及び /usr/lib の中身を二重チェックして、可能なら FreeBSD の緊急用の、もしくは“ライブファイルシステム” CD-ROM (例えば、公式リリース版の FreeBSD ISO イメージの disc2) をマウントし、ファイルをコピーします。いったん /bin/sh, /bin/ls, 及び他の標準ユーティリティを首尾よく実行できるようになったなら、標準のシステムで再起動を試みてください。

/rescue のツールは crunchgen(1) を使ってコンパイルされており、これにより標準のユーティリティに比べると、かなりコンパクトに出来ます。容量が厳しい環境で FreeBSD システムをビルドするのに、 /rescue を標準の /bin/sbin ディレクトリの代替として使うことが出来ます。単純に /bin/sbin を、 /rescue へのシンボリックリンクに変更するのです。 /rescue はスタティックリンクされているので、そのような環境では /usr/lib の大部分を省略してしまうことも可能です。

今までの /stand とは対照的に、 /rescueFreeBSD のソース及びバイナリの標準のアップグレードにより更新されます。

関連ファイル

/rescue
rescue 階層のルート。

関連項目

crunchgen(1), crash(8)

歴史

rescue ユーティリティは FreeBSD 5.2 ではじめて登場しました。

作者

rescue システムは、 NetBSD から取られたアイデアに基づいて Tim Kientzle <kientzle@FreeBSD.org>, によって書かれました。このマニュアルページは Simon L. Nielsen <simon@FreeBSD.org>によって、 Tim Kientzle <kientzle@FreeBSD.org>のテキストを基にして書かれました。

バグ

rescue ツールの大部分は、相当に麻痺した状態のシステムでも動作します。これの最もひどい例外は rescue 版の vi(1) で、今のところ termcap(5) ファイルにアクセスできるように、 /usr がマウントされている必要があります。うまくいけば、そのうちフェイルセーフな termcap(3) エントリが、 ncurses(3) ライブラリに追加されるでしょう。そうすれば /usr がすぐにはマウントできないシステムでも、 /rescue/vi が使用できるようになります。それまでは、ファイルの編集が必要なのに /usr がマウントできない場合、 rescue 版の ed(1) エディタが /rescue/ed として使用できます。
July 23, 2003 FreeBSD