【外付けHDD】新たなファイル消失問題【内蔵HDDも危ない?】
この記事を読むのに必要な時間は約 14 分です。
ご注意:今回の記事内容はすべて確実に検証できているものではありません。ただし、かなりの確度で正しいと考えています。一応の防止方法も紹介していますので適用することをお勧めします。
また、今回の現象はファイル消失問題の解決などのために高速スタートアップを無効に設定している方のほうがより影響があるかもしれません。
キーワード |
---|
外付けHDD、ファイルが消えた、フォーマットしてください、チェックディスク、CHKDSK、勝手に始まる、セーフモードの選択画面で漢字 が文字化け
更新 |
---|
最終更新日:2016/8/13…ファイル回復方法記事のリンクを追加
2016/8/13追加
ファイル回復方法記事:【どこに行ったの?】消失したファイル・フォルダを回復!!!【Win OS】
結論要約 |
---|
最近ファイル消失問題が秘かに再燃している気がします。PC使用環境の変化、Win10アップが主な原因ですが注意が必要な状況になってきています。また、今回の問題は最新のWin10プリインストールPCでも発生します。
詳細と解決策は本文をどうぞ。
◎ なお、現在調査中ですがWin10でサードパーティーのデフラグソフトを使用し、シャットダウン時(シェル終了状態)にデフラグを実行する設定は非常に危ないような気がします。
◎ 現在手元にあり、今回ファイル消失を検証した「AKASA AK-ICR-14 (内蔵USB 14in1)」です。この機材だけではなく、ほかのメーカーのものや「純正のUSBポート」を含めてすべての環境でエラー発生の可能性があります。
発生確率がレアであっても「ファイル消失・HDDデータ丸ごと消失問題」は発生すると取り返しがつきません。十分な注意が必要です。
対象機材/OS/ソフト |
---|
Win8.1/10、Win7(10へのアップグレード、外付けストレージの使いまわし)
対象読者 |
---|
すべてのWindows OS使用者
本文 |
---|
最近ファイル消失問題が秘かに再燃している気がします。PC使用環境の変化、Win10アップが主な原因ですが注意が必要な状況になってきています。また、今回の問題は最新のWin10プリインストールPCでも発生します。
◎ なお、現在調査中ですがWin10でサードパーティーのデフラグソフトを使用し、シャットダウン時(シェル終了状態)にデフラグを実行する設定は非常に危ないような気がします。
◎ 現在手元にあり、今回ファイル消失を検証した「AKASA AK-ICR-14 (内蔵USB 14in1)」です。この機材だけではなく、ほかのメーカーのものや「純正のUSBポート」を含めてすべての環境でエラー発生の可能性があります。
発生確率がレアであっても「ファイル消失・HDDデータ丸ごと消失問題」は発生すると取り返しがつきません。十分な注意が必要です。
この機材でXHCIの省電力を有効にしておくとUSB3.0ポートは省電力の復帰時に見事にこけます。(ポートが対応していても、外付けストレージがダメで復帰できなくても同じことです。そのため、最新のWin10対応PCでも発生することになります。)
その状態のままで「高速スタートアップを無効」にしてテストをしてみたところ、(私の環境では)外付けHDDのファイル消失やHDDの自動フォーマットがものの見事に発生します。
(完全に正確な言い方ではありませんが)Win8.1/10では、NTFSのLFSという仕組みがWin7までのOSと異なっています。
このため、問題が発生しないように次のケースでは自動的にOS起動時には新しいVer.にアップし、操作時に古いVer.にダウンする操作を自動的に実行しています。
1)安全な取り外し
2)高速スタートアップ無効状態のシャットダウン
注:内蔵ストレージのホットスワップでの取り外しは危険かもしれません
ところが「省電力状態から復帰しない」ということは、操作が不可能ということですから「自動的に古いVer.のLFSに戻らない」ということになります。
結果、ものの見事にWin8の時に大問題となったファイル消失問題が再発することになります。
なお、ファイル消失問題が再燃している大きな原因として考えられるものに「USB3.0の機器が一般化してきた」という部分も大きいと感じます。
【Windows PC】 USBポートが利用できない ゲゲッ【追加情報】を参考にXHCIの電源管理設定を同時に実行しておくことで防止できる部分も大きいので必ず設定してくださいね。
また、かなり効果的と考えられる「LFSの固定方法」は記事後半に記載しますのでご覧ください。
概要と原因
まず、発生する事象と推定される原因を列挙します。
・セーフモード開始画面での文字化け
推定される原因:
1)SSDなどへの移行のためマイグレーションツール(引っ越し)を使用した。
2)Win7⇒(Win8⇒Win8.1)Win10などのようにアップグレードした。
この場合予約領域のひっ迫すると「国識別情報」が吹っ飛ぶ、内容ファイルの破損が発生しやすくなるなどの障害が発生しやすくなります。マイグレーションツールを使用すると認証が通らなくなるのも同様の障害?かもしれません。(ツールによってはパーティションが等倍に縮小・拡大されるためです)
また、OS起動時に(毎回ではなくとも)チェックディスクが起動してしまう状態が発生し、その様な状態のHDDではファイルの消失が起きるようになります。
3)Win8.1/10ではUSB3.0がXHCIの取り扱いとなりました。(すでに3.1規格もでています)
4)Win8.1/10では省電力がWin7までと大幅に変更されています。
5)M/Bのチップセットも新しい省電力に完全対応ではないものがあります。このため内蔵ストレージでも不安があります。
6)Intelの新世代CPUとM/B(チップセット)の組み合わせでは電源ユニットも完全対応していないとスリープや休止からの復帰に不具合や不都合が発生します。(未検証ですが高速スタートアップ有効ではシャットダウンや起動にも不都合があるかもしれません)
3~6までが原因でLFSの新旧書き換えがうまくいかない場合は「当然に」ファイル消失問題が発生します。
ネット上の質問箱などを見ていると、内蔵ストレージでも「データディスクのプチフリ」が1~2秒程度の場合を含めるとかなりの頻度で発生しているように見えますので「そのような環境下ではシャットダウン時の新旧書き換えに失敗することはないか?」という疑いが否定しきれません。
ここでもう一つの問題は(互換性を考慮したのはわかるのですが)「なぜこのような複雑な手順を毎回実行する形式」を採用したのかということです。
多少の不便はありますが、明示的に取り外す際に古いVer.に戻すようにしておいてもよかった気がします。
なぜ、このようなことを提起するのかというとUSB機器の接続と安全な取り外しでは毎回書き換える、高速スタートアップを無効にした状態では起動と終了時に毎回書き換える、この過程でミスが発生する可能性は考えなかったのかということです。
心配のし過ぎではないかといわれる方ももちろんいらっしゃると思います。
しかしながら、サードパーティー製のデフラグソフトで「シェル終了後のデフラグ」を実行した場合に、「その後は毎回自動でCHKDSKが走るようになる」という事例を見ると「心配しておくほうが無難」と考えています。
少なくとも私は、「HDDのデータが丸ごと吹っ飛んでしまう」などという目にあいたくはありません。
さて、ここまでいろいろと書いてきましたが、もう一つの大きな問題は「今回の現象はファイル消失問題の解決などのために高速スタートアップを無効に設定している方」のほうがより影響があるかもしれないということです。
毎回LFSのVer.を書き換えるのをやめることはできないのかと考えませんか?
できるんですよ!
ただし、Windows Updateや予期せぬ電源断の時に設定が戻ってしまうことがありますので定期的にチェックしてくださいね。
LFSの固定方法
◎ あくまで自己責任です!!!
操作の前に:(複数台のストレージがある場合)
・外付けストレージ、USBメモリスティック、SDカードなどを安全な取り外しでLFS1.1の状態にして取りはずす。
・完全シャットダウンしてLFSを1.1にダウンし、内蔵ストレージをシステムドライブ1台だけにする。
・以下の操作完了後に1台ずつ順次接続し、起動状態でLFS1.1になっていることを確認していく。
1)LFS Ver.のチェック方法
Winキー+Xで高度なコンテキストメニュー⇒コマンドプロンプト(管理者)を実行して「 fsutil fsinfo ntfsinfo C: 」(Cの部分は各ドライブレター)
画像の場合はLFS2.0になっています。、高速スタートアップ無効の状態のPCでは毎回旧Ver.のLFS1.1との切り替えを繰り返していますのでいっそやめてしまいましょう。
(Win7と外付けストレージを共用している場合に万が一安全な取り外しを実行しなかった場合、高速スタートアップ有効でシャットダウン後に取り外した場合も安全です)
2)レジストリを書き換えます。
Winキー+Xで高度なコンテキストメニュー⇒ファイル名を指定して実行⇒「 regedit 」でレジストリエディターを開きます。
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\FileSystemに移動し、DWORD値「NtfsDisableLfsUpgrade」を作成して値のデータを 0から1 に変更します。
0から1に書き換えます。
書き換えたら、PCを再起動するか、シフトキー+電源ボタンで完全シャットダウンしコールドブートしてください。それで設定が反映されます。
3)LFS Ver.を確認します
再度Winキー+Xでcmd(管理者)を実行し、「 fsutil fsinfo ntfsinfo C: 」でLFSのVer.が1.1になっていることを確認します。
4)OKでしたら、内蔵ストレージから順に1台ずつ接続し、都度取り付けたストレージのLFS Ver.を確認していきます。
すべてLFS1.1二なれば(なっていれば)OKです。これで無用なLFSの書き換えは実行されず、もし安全な取り外しを忘れたり、高速スタートアップを有効にしているPCで電源が切れた状態で外付けHDDを取り外してもファイルの消失はおきません。
また、この状態にしておくとシェル終了後のデフラグを設定しても問題は発生しないと考えられます。
◎ 注意事項
・Windows Update、チップセットドライバの更新、予期せぬ電源断からの起動時の自動修復、スタートアップ修復などの後に設定が戻ることがあります。その様な場合は必ず再チェックしてください。
また、定期的なチェックをすることをお勧めします。
・LFSのVer.を1.1に固定することでパフォーマンスが若干低下します。(自分の手元ではシーケンシャル読み出しで1.5%程度、5回平均の数値で140⇒138でした)
2016/8/13追加
ファイル回復方法記事:【どこに行ったの?】消失したファイル・フォルダを回復!!!【Win OS】
更新履歴 |
---|
2016/5/4…初版
2016/8/13…ファイル回復方法記事のリンクを追加