Windows Vista が起動中にフリーズする問題と解決方法について。
スポンサーリンク
今回の問題は、Windows Search サービス用のインデックスファイル(windows.edb)に不良クラスタがあったことが原因。
チェックディスクを実行して不良セクタを置換し、PCを再起動したらフリーズしなくなった。
Windows Search サービスに依存するサービスはないようだし、PC内の検索も滅多に行わないので、無効にした。
以下、今回実施した具体的な手順。
- PCを「セーフモードとネットワーク」で起動する。
- Cドライブを右クリック→「プロパティ」を選択する。
- 【ローカルディスク(C:)のプロパティ】「ツール」→[エラーチェック]枠の「チェックする」ボタンを押す。
- 【ディスクのチェック】「ファイルシステムエラーを自動的に修復する」と「不良セクタをスキャンし、回復する」をチェック→「開始」ボタンを押す。
- PCを再起動して、チェックディスクが終わるのを待つ。(数時間はかかる。。)
- チェックディスク終了後、PCを再起動する。
- 【スタートメニュー】「コントロールパネル」→「管理ツール」→「サービス」を選択。
- 【サービス】一覧の中から「Windows Search」を探してダブルクリック。
- 【Windows Search のプロパティ】「依存関係」タブ:
- 「このサービスに依存しているシステムコンポーネント」が何もないことを確認。
- 【Windows Search のプロパティ】「全般」タブ:
- スタートアップの種類を「無効」にする。
- 「停止」ボタンを押す。
- 「OK」ボタンを押す。
- Windows Search サービス用のインデックスファイルを削除する。パスは以下の通り。
2012/11/22 追記:
Windows Search サービスを無効にするだけでは不十分だった。何故なら、ドライブ全体にインデックスを付けるようにしていたので、知らず知らずの内に HDD に負担をかけていた。
なので、以下の手順でドライブ全体にインデックスを付けないようにした。
- デスクトップにある「コンピュータ」をダブルクリックする。→【エクスプローラ】画面が表示される。
- 【エクスプローラ】「Cドライブ」を選択して右クリックする。→【ローカルディスク(C:)のプロパティ】ダイアログが表示される。
- 【ローカルディスク(C:)のプロパティ】「検索を速くするため、このドライブにインデックスを付ける」チェックを外す。
- 【ローカルディスク(C:)のプロパティ】「適用」または「OK」ボタンを押す。
- 全てのファイルの属性が変更されるまで待つ。(ファイル数が多いと20〜30分ぐらいかかる。)
- もし途中でアクセス不可のダイアログが表示されたら、「無視」または「すべて無視」ボタンを押す。
本日の教訓 … クライアントPCにインデックスは不要。
2012/11/28 追記:
どうも「不良セクタをスキャンし、回復する」はハードディスクに大きく負荷がかかるらしい。
「不良セクタを含んだクラスタは不良クラスタとして、ファイルシステム上使わないようにするだけ」
という認識は持っていたけど、そもそもこのオプションは頻繁に使うものではなさそうだ。
参考資料:
関連記事:
- CrystalDiskInfoの「代替処理保留中のセクタ数」が注意表示 - 量産メモ
- ハードディスク故障の原因と対策 - 量産メモ
- インデックス構築を無効にする - 量産メモ
- http://nagabuchi.jugem.jp/?eid=494
- http://memo.ozleaves.com/?eid=1521735
- まもぶろぐ: Windows.edbが壊れた