Provided by: manpages-ja_0.5.0.0.20221215+dfsg-1_all
名前
fsck - Linux ファイルシステムのチェックと修復を行う
書式
fsck [ -sAVRTNP ] [ -C [ fd ] ] [ -t fstype ] [filesys ... ] [--] [ fs-specific-options ]
説明
fsck は (ひとつまたは複数の) Linux ファイルシステムをチェックし、 また指定すれば修復も行 う。 filesys に指定できるのは、デバイス名 (例: /dev/hda1, /dev/sdb2)、 ファイルシステムの マウントポイント (例: /, /usr, /home)、 ext2 ラベルまたは UUID 指定 (例: UUID=8868abf6-88c5-4a83-98b8-bfc24057f7bd, LABEL=root) である。 通常 fsck は、 物理的に異 なるディスク上にある複数のファイルシステムを並列的にチェックし、 全ファイルシステムの チェックに要する時間を短縮しようとする。 コマンドラインからファイルシステムがひとつも指定されず、かつ -A オプションも指定されなかっ た場合は、 fsck はデフォルトの動作として /etc/fstab に書かれているファイルシステムを逐次的 にチェックする。 これは -As オプションを指定した場合の動作と同じである。 fsck の返り値は、以下の状態を表す数の和となる。 0 - エラーなし 1 - ファイルシステムのエラーが修正された 2 - システムをリブートする必要がある 4 - ファイルシステムのエラーが修正されないまま 残っている 8 - 操作エラー 16 - 利用法・文法のエラー 32 - fsck がユーザ要求によってキャンセルされた 128 - 共有ライブラリのエラー 複数のファイルシステムをチェックした場合の返り値は、 チェックした各ファイルシステムの返り 値に対して、 ビットごとの OR をとったものになる。 fsck は、実際には Linux で利用できるさまざまなファイルシステムチェッカー (fsck.fstype) へ の単なるフロントエンドにすぎない。 ファイルシステム固有のチェッカーは、 /sbin, /sbin/fs.d, /sbin/fs, /etc/fs, /etc, 環境変数 PATH 内のディレクトリの順にサーチされる。 詳細はファイル システム固有のチェッカーのマニュアルを参照すること。
オプション
-s fsck の動作を逐次的にする。 複数のファイルシステムを インタラクティブ (対話) モード でチェックする際に有用。 (注意: デフォルトでは e2fsck(8) の動作は対話モードである。 e2fsck(8) を非対話モードで動作させるには、 -p オプションか -a オプションを使用す る。また非対話的にエラーを自動修復させたい場合は -n オプションを利用する。) -t fslist チェックするファイルシステムのタイプを指定する。 -A オプションが指定されている場合 は、 fslist にマッチするファイルシステムのみをチェックする。 fslist パラメータ は、コンマで区切られた ファイルシステムとオプション指定のリストである。 このコンマ 区切りのリストに含まれるファイルシステムのすべてに、 否定演算子 'no' または '!' を 前置することもできる。 これにより、 fslist にリストされていないファイルシステムだけ がチェックされる。 fslist のファイルシステムすべてに否定演算子が付けられていない場 合は、 fslist にリストされているファイルシステムのみがチェックされる。 (訳註: リス トの一部だけに否定演算子を付けることはできない) オプション指定をコンマで区切った形で fslist に含めても良い。 これらは opts=fs- option という書式でなければならない。 オプション指定が存在すると、 /etc/fstab のマ ウントオプションのフィールドに fs-option があるファイルシステムのみがチェックされ る。 オプション指定の前に否定演算子がある場合は、 /etc/fstab のマウントオプションの フィールドに fs-option がないファイルシステムのみがチェックされる。 例えば、 opts=ro を fslist に指定すると、 /etc/fstab にリストされているファイルシス テムのうち、 ro オプションを持つものだけがチェックされる。 fsck プログラムへの非公式なユーザインターフェース変更に 依存したブートスクリプトを 使っている Mandrake ディストリビューションとの互換性のため、 fslist にファイルシス テムタイプ loop があった場合、 -t オプションの引き数として opts=loop が指定されてい ると仮定する。 通常ファイルシステムのタイプは、 filesys を /etc/fstab ファイルから検索して見つかっ たエントリから取得する。 ファイルシステムのタイプが取得できず、 かつ 1 つのファイル システムだけが -t オプションの引き数になっている場合、 fsck はそれを利用する。 指定 してあるファイルシステムタイプを利用できない場合は、 デフォルトのファイルシステムタ イプ (現時点では ext2) を利用する。 -A /etc/fstab に列記されているファイルシステムをすべてチェックする。 このオプションを 用いれば、複数のファイルシステムに対して fsck をひとつひとつ単独で実行しなくてもよ いため、 システムの初期設定ファイルである /etc/rc 中でよく利用される。 -P オプション (後述) が指定されていなければ、 ルートファイルシステムが最初にチェッ クされる。その後、 /etc/fstab ファイルの第 6 フィールドである fs_passno の順序にし たがって他のファイルシステムがチェックされる。 fs_passno の値が 0 であるファイルシ ステムは、スキップされて一切チェックされない。 fs_passno の値が 0 より大きいファイ ルシステムは、小さい fs_passno 値を持ったものを優先し、順番にチェックされる。 同じ 番号が指定されているファイルシステムが複数ある場合には、 fsck はそれらを並列して チェックしようとする。 しかし同じ物理ディスクにあるファイルシステムの同時チェックは 避ける。 したがって、 /etc/fstab に対する最も普通の設定は、ルートファイルシステムの fs_passno を 1 とし、他のすべてのファイルシステムの fs_passno を 2 とするものであ る。こうすると fsck は、(効果が期待できる場合には) 自動的にファイルシステムチェッ カーを 同時に並列して動作させる。 何らかの理由で複数ファイルシステムの 並列チェック をしたくない場合には、システム管理者はこの設定をしてはいけない。 たとえばマシンのメ モリが少なく、余分なページングが 問題になる場合などがこれにあたる。 -C [ fd ] 作業完了分・残り分の棒グラフをサポートしている ファイルシステムチェッカー (現在 ext2 と ext3 用のものだけ) に、 表示を行わせる。 fsck は一度にひとつのチェッカーだ けが表示を行うように、 複数のチェッカーを管理する。 GUI フロントエンドにはファイル ディスクリプタ fd を指定することができる。 この場合、棒グラフの情報はファイルディス クリプタに送られる。 -N 実際には実行せず、何が行われるかだけを表示する。 -P -A オプションが指定されている場合、 ルートファイルシステムを他のファイルシステムと 並列にチェックする。 ルートファイルシステムが壊れている場合には e2fsck(8) 自体が壊 れている可能性もあるため、 このオプションを用いるのは安全性を損なうことになる。 こ のオプションは、 ルートファイルシステムを小さくコンパクトなパーティションに切りなお したくない システム管理者向けのオプションである (ルートファイルシステムを小さくコン パクトにまとめるのが正しい解なのだが)。 -R -A オプションを用いて全てのファイルシステムをチェックする際に、 ルートファイルシス テムをチェックしないようにする (ルートファイルシステムがすでに read/write でマウン トされている場合)。 -T 起動時にタイトルを表示しない。 -V fsck から起動されるシステム固有のコマンドを含め、詳細な表示をする。 fs-specific-options fsck が理解しないオプションは、ファイルシステム固有のチェッカーに渡される。 これら のオプションは引き数をとってはならない。 なぜなら、どのオプションが引き数をとるか (とらないか) を fsck が正しく判断できる方法がないためである。 -- 以降に指定したオプションと引き数は、ファイルシステム固有のオプションとして ファ イルシステム固有のチェッカーに渡される。 fsck は任意の複雑なオプションをファイルシステム固有のチェッカーに渡すようには 設計 されていない点に注意すること。 複雑なことをやろうとするときは、 ファイルシステム固 有のチェッカーを直接実行してほしい。 非常に複雑なオプションと引き数を fsck に渡した 場合に、期待した動作をしなかったとしても、 バグとして報告するには及ばない。 fsck に やらせるべきではないことを、あなたがやったのだから。 ファイルシステム固有の fsck のオプションは、標準化されていない。 確かでない場合は、ファイ ルシステム固有のチェッカーの man ページを調べること。 保証されたものではないが、以下のオプ ションは ほとんどのファイルシステムチェッカーでサポートされている。 -a 質問なしで自動的にファイルシステムを修復する (このオプションの使用には注意を要す る)。 ほとんどのファイルシステムチェッカーは -a オプションに対応しているが、 e2fsck(8) においては -a オプションは過去互換性のために準備されているだけである。 し たがって e2fsck では、このオプションは (安全に利用できる) -p オプションにマップさ れ、 いくつかのフィルシステムチェッカーがサポートしている -a にはマップされない。 -n ファイルシステム固有のチェッカーの中には、 -n オプションが指定されると、 問題点を修 復するのではなく、その問題点を単に標準出力に書き出すものもある。 しかし全てのファイ ルシステム固有のチェッカーが、 このような動作をするわけではない。 特に fsck.reiserfs(8) は、このオプションが指定されても破損箇所を報告しない。 また fsck.minix(8) は、 -n オプションを全くサポートしていない。 -r 対話的にファイルシステムを修復する (確認を求める)。 注意: fsck が並列に動作している 場合にこのオプションを利用するのは あまり賢いとはいえない。 e2fsck においては並列動 作がデフォルトであり、 このオプションは過去互換性のためにのみ準備されている。 -y ファイルシステム固有のチェッカーの中には、 -y オプションが指定されると、検出された ファイルシステムの破損箇所を 常に自動的に修復しようとするものもある。 エキスパート は、より上手に fsck を手動で実行させることができる場合もある。 全てのファイルシステ ム固有のチェッカーが、 このオプションを実装しているわけではない点に注意すること。 この man ページを書いている時点では、特に fsck.minix(8) と fsck.cramfs(8) は -y オ プションをサポートしていない。
著者
Theodore Ts'o (tytso@mit.edu)
ファイル
/etc/fstab
環境変数
fsck プログラムの振舞いは、以下の環境変数による影響を受ける。 FSCK_FORCE_ALL_PARALLEL この環境変数が設定されていると、 fsck は指定されたファイルシステムすべてを、 それら のファイルシステムが同じデバイス上にあるように見えるかどうかを問わず、 並列にチェッ クしようとする。 (これは IBM や EMC などの会社から販売されているような、 RAID シス テムやハイエンドのストレージシステムで有用である。) FSCK_MAX_INST この環境変数は、同時に動作するファイルシステムチェッカーの最大数を制限する。 この指 定を行えば、多数のディスクを備えたシステムにおいて fsck がたくさんのファイルシステ ムチェッカーを同時に起動し、 システムで利用できる CPU やメモリなどの資源に 過度の負 荷を与えてしまうことを避けることができる。 この値を 0 にすると、spawn するプロセス 数の制限がなくなる。 現在はこれがデフォルトだが、 fsck の将来の版では、OS からアカ ウンティングデータを取得することにより、 同時に行うファイルシステムチェックの数を自 動的に決めるようになるかもしれない。 PATH PATH 環境変数はファイルシステムチェッカーを探索する際に用いられる。 まず最初に、一 連のシステムディレクトリが検索される。これらは /sbin, /sbin/fs.d, /sbin/fs, /etc/fs, /etc である。これに続いて PATH 環境変数に指定されたディレクトリ群が検索さ れる。 FSTAB_FILE この環境変数を用いると、システム管理者は /etc/fstab ファイルの標準的な置場所を変更 できる。 これは fsck のテストを行う開発者にとっても便利である。
関連項目
fstab(5), mkfs(8), fsck.ext2(8) または fsck.ext3(8) または e2fsck(8), cramfsck(8), fsck.minix(8), fsck.msdos(8), fsck.jfs(8), fsck.nfs(8), fsck.vfat(8), fsck.xfs(8), fsck.xiafs(8), reiserfsck(8).