2008/02/14(木)Linux の badblocks コマンド
Linuxでディスクエラーをチェックするコマンドbadblocksについて。
fsck
man。ファイルシステムのエラーをチェックするプログラム。ディスクの物理エラーを調べてはくれない。
# fsck /dev/hda1
badblocks
デバイスそのもののエラーをチェックする。
# badblocks -s -v /dev/hda 読み出しテスト # badblocks -s -v -n /dev/hda 非破壊読み書きテスト # badblocks -s -v -w /dev/hda 破壊読み書きテスト
HDDの区画ではなくHDD全体を与えるのがミソ。破壊テストでは「0xaa, 0x55, 0xff, 0x00」を書き込み読み出してテストします。"-s -v"は進捗などを表示する指定。
一度にテストするサイズは -b(ブロックサイズ)と -c(ブロック数)で指定します。
# badblocks -s -v -b 1024 -c 256 /dev/hda 1024*256
マウントされているディスクでは読み出しテストしかできません。シングルユーザーモードでは読み書きテストができるみたいですが。
非破壊読み書き検査について
非破壊読み書き検査は次の手順で行われます。
- ディスクから現在のデータを読み出す
- ディスクにテストパターンを書き込む
- バッファをフラッシュする
- ディスクから読み込み書き込んだテストパターンと比較する
- 最初に読み込んだデータを書き戻す
Linuxカーネルで「O_DIRECT」というフラグが使えれば、2と4では O_DIRECT 用いてディスクと直接やりとりをします(ディスクキャッシュを抑制します)。これは比較的最近のカーネルでないとまともに使えないようです。
CTRL-Cなどで止めると大変なことになるので、プログラム側でCTRL-Cで落ちないように抑制されています。(上に書いたとおりですので、この検査をkillとかで止めると大変なことになります。)
非破壊テストは破壊テスト並のチェックができますが、単純な破壊テストよりもメモリと時間が食います。
2008/02/13(水)ぼやき
2008/02/08(金)キノコの話
読み終えて素直に閉じればよかったのですが、
…
……
………

表示されてるし!!!
全くでたらめかと思ったのですが、
リンクをたどって他の記事もみればわかりますが、excite翻訳がこんなに楽しいとは思いませんでした。一通り楽しんだ後、ふととあるブログを表示させてみました。

きわめて全部キノコ!!!
……どんだけキノコ好きなんだよ ○| ̄|_
2008/02/07(木)どこかの掲示○サイトがおちてるらしい
2008/02/06(水)Apache proxyの設定
たまに(フォワード)proxyサーバが必要なことがあり、昔は delegate を使っていたのですが最近は古くて危ないらしいということで困っていました。