はじめに(結論)
SSDで不良ブロックができたけど、「chkdsk ドライブ名 /r」コマンドを懲りずに5回叩いたらなおった。諦めないことが必要だと伝えたい。
現象
Hyper-Vの仮想クライアントを格納しているSSDの調子が悪いと思ってホスト側のイベントログを確認したら↓みたいなエラーが大量に出力されていた。オワタ\(^o^)/
VHDXをコピーしようにも不良セクタに起因しているであろうエラーが出て手詰まり。
SSDのスペック
Crucial
容量:512GB
使用容量:250GB
ドライブ構成
以下の通りWindowsとUbuntuの仮想マシンが格納さているだけ。
e:\>dir /s /b
e:\Development
e:\ubuntu2
e:\Development\Virtual Hard Disks
e:\Development\Virtual Machines
e:\Development\Virtual Hard Disks\Development.vhdx
e:\Development\Virtual Machines\E14C24B0-903E-4FEE-89CB-8FABC4C18F29
e:\Development\Virtual Machines\E14C24B0-903E-4FEE-89CB-8FABC4C18F29.vmcx
e:\Development\Virtual Machines\E14C24B0-903E-4FEE-89CB-8FABC4C18F29.VMRS
e:\ubuntu2\Snapshots
e:\ubuntu2\Virtual Hard Disks
e:\ubuntu2\Virtual Machines
e:\ubuntu2\Snapshots\37785E30-6F75-4B18-9580-2AA7C7CC5D78
e:\ubuntu2\Snapshots\66A3B9E6-35DB-4DCA-83DA-E2D271832587
e:\ubuntu2\Snapshots\7F5DE175-54A8-439A-872A-D5C6613E944B
e:\ubuntu2\Virtual Hard Disks\ubuntu2.vhdx
e:\ubuntu2\Virtual Machines\5C707328-A04E-41A0-A41B-7BE9DF437FB7
e:\ubuntu2\Virtual Machines\5C707328-A04E-41A0-A41B-7BE9DF437FB7.vmcx
e:\ubuntu2\Virtual Machines\5C707328-A04E-41A0-A41B-7BE9DF437FB7.VMRS
対処内容
データのバックアップ
VHDXのマウント自体はギリできたので、必要そうなデータをとりあえずバックアップ領域に退避した。Microsoftアカウントで入っていたためユーザープロファイルの領域のデータ(特にデスクトップフォルダ)のバックアップは諦めていたが、意外に簡単にデータをみることができた。
chkdskコマンドの実行
ディスクがやばい時の必殺奥義、以下のコマンドを叩いたよ。
chkdsk e: /r
時間にして、約1〜2時間くらいかかった。ちなみに、自分の場合「進行状況が46/240完了」のまま50分以上変化なかったけど、ググった感じ気にしたら負けらしい。
chkdsk e: /r のディスク負荷
基本的に98%〜100%に張り付く。実行前にバックアップ必要。
不明なエラーが発生
「不明なエラーが発生しました 766f6c756d652e63 470」がでてきた。
ググっても特に有益な情報が無く、いよいよ詰まった。。。
諦めることなく何回もchkdskを実行
不明なエラーが4回連続出力されたけど、5回目でなんかうまくいった。。。なぜうまくいったのか、理由は不明。
フォーマット
このまま使い続けるの怖いからフォーマットを決意。
フォーマットの種類
Windowsには
- 普通のフォーマット(フルフォーマット)
- クイックフォーマット
がある。
##クイックフォーマットとフルフォーマットの違い
この2つの違いは、Western Digitalのサポートサイト曰く、「バッドセクタをスキャンするかどうか?」であり、クイックフォーマットは「既に1回でもフォーマットされていたこと、そして、ハードディスクにダメージがないと保証できる」時に使うのが良いとのこと。
また、こんなことも書かれていた。
If you installed Windows on a partition that was formatted by using the Quick format option, you can also check your disk by using the chkdsk /r command after the installation of Windows is completed.
意訳すると、「もしクイックフォーマットしたならWindowsのインストール後chkdsk /r 流した方がいいよ」とのこと。これってつまり、フルフォーマットを選択したら大量の読み書きが発生するってことなのか?そしてchkdskとフルフォーマットは同じことしてるのか?
##大量に読み書きしているのか?
Crystal Disk Info使って実際に読み書きが行われているか試してみた。。。かったけど、時間がないので今度実行してみたいと思います。ただ、他のサイトをみてもやってることはchkdskらしいので大量のディスクIOが走るっぽい。つまり、一番最初にSSDをフォーマットするときはクイックフォーマットで良さそうな気がします。また、今回はバッドセクタがありそうだったのでフルフォーマットしました。
最後に
Windowsの青い画面をもう見たくないでござる。