badblocks のテスト結果に含まれるエラーの詳細
1. はじめに
badblocks は,ストレージデバイスの不良ブロックを検出するプログラムであり,ストレージデバイスの健康状態を測定するために使用されます。map page によると,Remy Card 氏によって開発され,現在は Theodore Ts’o 氏によってメンテナンスされています。本記事では,badblocks のテスト結果に含まれるエラーの詳細について調査した結果をまとめています。
2. 疑問
正常なストレージデバイスと不正ブロックが含まれるストレージデバイスに,それぞれ badblocks を実行すると以下のようなテスト結果が出力されます。
“Pass completed, X bad blocks found.” の後ろに位置する丸括弧内には,3 つのエラーが表示されています。しかし,これらのエラーに関する情報は map page に記載されていません。それぞれのエラーが何を意味するのかを調べます。
3. 回答
ArchWiki や Stack Exchange のスレッドによると「読み取りエラー・書き込みエラー・破損エラー」と分類されています。また,Server Fault のスレッドでは 以下のように分類されています。
- 読み取りエラー: 読み込めなかったブロック数
- 書き込みエラー: 書き込めなかったブロック数
- 破損エラー: 書き込んだデータと読み込んだデータが異なるブロック数
4. おわりに
ここまで,badblocks のテスト結果に含まれるエラーの詳細に関する調査結果について記述してきました。badblocks は FLOSS で開発されているため,ソースコードが公開されています。そのため,より詳細に知りたい人はソースコードを参照してみてください。