Provided by: manpages-ja_0.5.0.0.20140515+dfsg-2_all ![bug](/img/bug.png)
![bug](/img/bug.png)
名前
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).