badsect(8) FreeBSD 一般コマンドマニュアル

badsect

前のページ 上に戻る 次のページ

badsect




解説

     badsect はバッドセクタを含むファイルを作成します。通常のフォーマッタは、
     バッドセクタをアクセスできないようにします。このとき、フォーマッタはドラ
     イバ用にバッドセクタのフォワーディングテーブルを作ります。もしドライバが
     標準でバッドブロックをサポートしているならば、バッドブロックを孤立させる
     ためにはその方法を使用すべきです。なぜならばバッドブロックフォワーディン
     グはパックを完全に見せ、そのようなパックは dd(1) でコピー可能だからです。
     本プログラムで採用している方法はバッドブロックフォワーディングよりは一般
     的ではありません。なぜならば badsect はファイルシステムの i-list のバッド
     ブロックを回復することができませんし、スワップ領域のバッドブロックも回復
     することができないからです。

     突然バッドとなったセクタをバッドセクタテーブルに追加するためには、ディス
     クによっては現在のところ、標準の DEC フォーマッタを実行する必要がありま
     す。このため、新たに生じたバッドブロックを扱う場合、およびドライバがバッ
     ドブロッキング標準をサポートしていない場合には、 badsect は有効かも知れま
     せん。

     badsect は現在アクセスされていないファイルシステムに対して次のように使用
     します。 badsect を使うには、まず、ファイルシステムをマウントし、そのルー
     トディレクトリに移動します。ここに BAD という名前のディレクトリを作りま
     す。 badsect コマンドに、引数として、このディレクトリと追加したいすべての
     バッドセクタを指定して実行します (セクタ番号はファイルシステムの先頭から
     の相対で指定しなければなりませんが、システムがコンソールエラーメッセージ
     に表示するのは相対セクタ番号であるため難しくはありません)。その後、ルート
     ディレクトリに移動し、そのファイルシステムをアンマウントしてから fsck(8)
     を実行します。 fsck はバッドセクタを含むファイルを削除しますが、
     BAD/nnnnn は削除 しないようにしてください。以上の操作によりバッドセクタは
     BAD ファイルにのみにあることになります。

     badsectmknod(2) の引数にセクタ番号を指定してコールすることで、最初の
     ブロックが指定したバッドセクタを含んだ特別なファイルを作ります。このファ
     イルの名前はバッドセクタの番号です。 fsck(8) は、このファイルを発見すると
     ``HOLD BAD BLOCK ?'' と聞いてきます。これに対して y と答えると、 fsck(8)
     はその inode を、バッドブロックを含む通常ファイルにコンバートします。


関連項目

     fsck(8)


診断

     badsect は、危険な領域のブロックやファイルシステム外のブロックを追加しま
     せん。また、ブロックが既に使用されている場合には警告を表示します。


バグ

     あるファイルシステムフラグメント中の複数のセクタがバッドとなった場合、そ
     のうちの 1 つだけを badsect に指定しなければなりません。バッドセクタファ
     イル中のブロックは、ファイルシステムフラグメント中の全てのセクタをカバー
     するからです。


歴史

     badsect コマンドは 4.1BSD から登場しました。

ABELNET VPSサービス