Windows 8(8.1) / LFS2.0 と 外付けHDD

2015-01-15

Windows

関連記事
  1. ASUS ZENBOOK/Windows 8.1で外付けUSB-HDDが認識しない 
参考情報
  1. Windows8で外付けHDDを認識しない、一定条件で外付けHDDのファイルが消えちゃう問題
  2. Windows 8/8.1でLFS(ログファイルシステム)のバージョンを上げない方法
  3. Windows 8 volume compatibility considerations with prior versions of Windows
  4. Microsoftの資料「Windows8とそれ以前のWindowsの、Diskの互換性とその注意事項について」その1その2その3 (上記3の訳+α)
関連記事1の解決の元になった情報が気になっていたのだが、データの移設を行っていてその現象かもと思われる現象に出会ってしまった。フォルダを開こうとすると「ファイルまたはディレクトリが壊れているため、読み取ることができません。」と言われた。
私の発生した現象と、記載されている現象が同じなのかどうか確信はない。現象が発生したUSB-HDDは、旧PCの内臓HDDをHDDケースに入れたもので、元々旧PCではなんか使っているうちにOSがおかしくなって行っていて、HDDに原因があるような気もしていたので。
記載されている現象というのは、「Windows 8(8.1)で外付けUSB-HDDを付けたままシャットダウンしてから取り外し、他のバージョンのWindows(8同士でも?)に取り付けて読み書きすると、データがおかしくなる」というもの。(たぶん。間違えていたらごめんなさい。)
正直、そんなことがあったら大問題すぎるので、なんかの間違いだろうと思った。でも、それっぽい現象が自分で起こったのでよく読んでみると、MicrosoftのTechNetでも言及されている(参考情報3参照)との事なので、本当なのだろう。Microsoftさん、これ本当なら大問題ではないですか?
詳細は私の手に余るのし、間違えているかもしれないので、参考情報を参照ください。以下備忘のために私の理解したところをまとめておく。

現象
  1. Windows 8(8.1)で外付けUSB-HDDを付けたままシャットダウンしてから取り外し、他のバージョンのWindows(8同士でも?)に取り付けて読み書きすると、ファイルシステム(データ)がおかしくなる
原因(現象と原因が違うという説もあるみたいだけど)
  1. Windows 8(8.1)では、NTFSのログファイルシステム(LFS)というもの仕組みが変わり、バージョン2.0になった(7以前はバージョン1.1)。高速化できるらしいが、両者は互換性がない。
    バージョンは、コマンドプロンプト(管理者権限?)で、
    「fsutil fsinfo ntfsinfo c:」(最後は調べたいドライブレター)
    で調べられる。
  2. Windows 8(8.1)では、高速スタートアップ(Hybrid boot)という機能が追加された。シャットダウン時に完全終了せずにハイバネーションのような状態で終了。起動時の初期化作業の一部を省略することで、起動を早くするという事らしい。
  3. 通常のシャットダウン(=高速スタートアップの準備)した場合、LFSのバージョンは2.0のまま。
    →そのまま7以前のOSに繋ぐと問題が発生する。
対策(やりかたは、参考情報参照)
  1. USBの安全な取り外しを必ず行う
    その場合、LFSをバージョン1.1に書き換えて終了するため、以前のOSに繋いでも問題なし。
  2. 高速スタートアップを無効にする
    完全なシャットダウンが行われ、LFSをバージョン1.1に書き換えて終了するため、以前のOSに繋いでも問題なし。
    スリープやハイバネーションの状態ではずすとどうなるの?
  3. Windows 8(8.1)のLSFのバージョンを1.1に変更する
    こうしておけば、高速スタートアップのままでも問題はでないはず。
  4. ストレージデバイスのキャッシュポリシーが、クイック削除であることを確認する
    1や2の前提のような記載がされているが、よくわからない。
3の対策をやっておくべきかなぁ…。
でも、やっぱり本当なの?こんな重大な問題?っていう疑問は残る。