So-net無料ブログ作成

Windows 8以降はLFSのバージョン違いでファイルが消える場合がある [OS]

Windows 10について調べている内に、「Windows 7以前とWindows 8以降のPCでハードディスク(以降HDD)を相互利用するとHDD内のファイルが消える場合がある」という問題がある事がわかった。

追記。Windows 8同士でもLFSの整合性が失われた場合(高速スタートアップが有効のままシャットダウンでHDDを外したなど)でもファイルが消える場合がある模様。

usb_hdd.png
Windows 7以前とWindows 8以降のPCでハードディスクを相互利用するとHDD内のファイルが消える場合がある

もう少し具体的に書くと、Windows 7以前で利用していたHDDをWindows 8以降のWindowsが動作するPCに接続すると、※LFS(Ver. 1.1)が上書きされる。そして上書きされた状態のまま再びWindows 7のPCにHDDを接続した場合、Windows 7ではWindows 8以降の新しいLFS(Ver. 2.0)が認識出来ないためエラーが発生し、自動的にエラーの回復(chkdsk)を試みようとするので、その時にファイルシステムが破壊されるようだ。

※LFS (Log File Service)
 NTFSフォーマットされたストレージ(HDD等の記録デバイス)で、ファイルシステムの不整合を修復するための仕組み。通常隠しファイルとして$LogFileというファイル名で記録されている。このファイルはNTFSにアクセスがある度に更新されていて、もし書き込みが正常終了しなかった場合はこのファイルの内容を元にエラーの修復をする。詳細はここhttp://ntfs.com/transaction.htm


この問題の発生にはHDDの付け外しが必要なので、主にUSBによる外付けHDDを利用している人が被害に遭いやすい。そして一旦被害に遭うとファイルの復旧は非常に困難であるようだ。復旧の成功率はケースバイケースで変わるだろうが、ネット上の情報を見る限りあまり高いとはいえない。


この問題に対処するにはいくつか方法があるので簡単に紹介しておく。


1.Windows 8以降のPCにHDDを接続したら正規の手段で取り外す事を厳守する

  USB HDDを外す時は必ず「タスクバー右のアイコンから安全な取り外し」で外す。
  使用中などのメッセージが出て取り外しが出来ない場合は、PCを一度再起動
  した後に再び試みる。


2.LFSの書換えを無効にする

  そもそもの問題がLFSの書換えに起因する。
  なので、レジストリを操作して「LFSの書換え」が起きないようにする。
  方法はregeditを起動して「HKEY_LOCAL_MACHINE\System\CurrentControlSet
  \Control\FileSystem\NtfsDisableLfsUpgrade」を開き、値を0から1に変更する。
  レジストリを変更したら、必ず再起動させる事。
  なおこの方法はなんらかの原因で元に戻る事があるそうなので注意が必要。


3.Windows 8以降のPCに対して「高速スタートアップを無効」にする

  高速スタートアップを無効にする事でシャットダウン時にLFS 1.1に書き戻されるようだ。
  この状態ならばシャットダウン後HDDを取り外しても問題が起きない。


以上。
なおこの問題はNTFS特有の仕組みであるLFSの互換性問題が原因で起きるので、FAT32やexFATでフォーマットされている事が多いUSBメモリーやSDカード等では発生しない。ただしデータの安全の為にはUSBメモリー等であってもPCからいきなり引き抜くのではなく、「タスクバー右のアイコンから安全な取り外し」を心掛ける事。


それにしても、このように重大な問題に対する情報があまりに少ない事に驚いた。
大多数の人は「Windows 7とWindows 8を同時に利用し、なおかつそれらの間でNTFSフォーマットされたストレージデバイスを使い回す」、というケースがないため問題に遭う事はない。だが少数の例とはいえこの問題で大切なデータを消失する可能性がある事を、Micro$oft社がなんの告知もしていない事に怒りを覚える。

ネットに出回っている情報も主にこの問題の被害者による発信で、Microsoft自身はITプロフェッショナル向けの「Microsoft TechNet」内にあるWikiでの情報公開に留まり、一般に知られるようにはなっていない。

私自身この問題に関しては不勉強を痛感している。
Micro$oftによる積極的な情報公開が無かったとはいえ、事故が起きてからでは取り返しが付かない。幸いにもWindows 8が登場してから2年以上、私自身がWindows 8の利用を避けていたためにこの問題の犠牲にはならなかったが。


なお、この問題についてさらに詳しい情報を求める方は、「windows8 ntfs」及び「Windows8 データ消失」等のキーワードで検索すると良い。

nice!(1)  コメント(11)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 1

コメント 11

Myate

情報のご提供、ありがとうございます。

現在 Windows7 PCを複数台使っているのですが、無償アップグレード
期間中に、この際だからアップグレードしてみようかと思っていましたが、
本当に問題点は無いのか?と思って調べていたら、このサイトにたどり着き
ました。

私自身も Windows8 には全く関心が無かったため、このような変更が
なされているとは知りませんでした。危ないところだったかもしれません。

なお、参考になるか分かりませんが、以下のような対策ソフトも見つけました。

【新発売】Windows10レスキューキット

http://n.shop.vector.co.jp/service/catalogue/10rescue/

本当に助かりました。ありがとうございました。


by Myate (2016-05-24 18:51) 

98式軍刀

>Myate様

お役に立って幸いです。

それからWindows10レスキューキットについてですが、私はすでにテスト済みです。

個人的にはまったく役に立たないソフトウェアなので記事にはしていませんが。

by 98式軍刀 (2016-05-24 20:56) 

Myate

>98式軍刀 さん

返信ありがとうございます。

一つ質問させて頂いてもよろしいでしょうか。

Windows10レスキューキットですが、ほとんどの機能は必要ないと
思ったのですが、「外付けディスクのファイル消失問題の解決」という
項目に惹かれておりました。

しかし、既に記載されておられるように、「高速スタートアップを無効」に
することで、同じ事が実現できる(消失問題は発生しないようになる)ので
不要(つまり役に立たない)という事だと理解してよろしいでしょうか。

お手数をおかけいたしますが、返信頂けますと嬉しいです。

by Myate (2016-05-25 00:26) 

98式軍刀

>Myate様

はい、そのような理解で問題ありません。
私の場合は自分で設定変更やレジストリ編集などを行いますので不要と思っただけです。

レジストリ編集などに慣れていない人の場合はツールを使った方が安全という意味では、Windows10レスキューキットは有用だと思います。

by 98式軍刀 (2016-05-25 18:55) 

Myate

なるほど、納得いたしました。

ご返信、誠にありがとうございました。

by Myate (2016-05-25 22:33) 

Myate

>98式軍刀 さん

過日は大変お世話になりました。
m(_ _)m

いよいよ Windows 7 のサポートが残り1年となりました。
これまで、Windows 10 搭載PCのほうは、LFS のダウングレードを実施して対応してきておりますが、気になっているのは半年に一度の大型アップデートを適用した際、強制的に LFS がアップグレードされてしまう点です。
そのため、大型アップデートのたびに毎回 LFS のダウングレードを行う手間がかかるという点と、強制的に LFS がアップグレードされてしまったタイミングで、偶発的にファイル消失が発生するのではないか?という不安が常につきまとっています。

また、前述の通り Windows 7 のサポートが残り1年となっている事から、どこかのタイミングで完全に LFS2.0 へ移行すべきだろうか?とも考えるようになりました。

そこで98式軍刀 さんにお尋ねしたいのですが、以下の2点につきまして、98式軍刀 さんはどのようにお考えでしょうか?

1)
LFSの互換性問題でファイル消失が発生する件ですが、この問題は現在も解決されておらず、当時のままだという認識ですが、間違っておりませんでしょうか?
もし、どこかのタイミングでこの問題が修正されたという情報をお持ちでしたらご教示頂けませんでしょうか。

2)
約1年後の Windows 7(現在のメインPCです)の利用停止のタイミングで Windows 10 の LFS2.0 で運用する事とした場合、1台だけ Windows 7 PC を確保しておき(スタンドアロンとして運用)、オリジナルデータ格納ストレージと共に保存、必要に応じて(ファイル消失が確認された時点で)この環境からファイルを復元する、という方法はどうだろうか?と考えてもおります。

お手数をおかけしますが、98式軍刀 さんのご意見を賜れますと嬉しいです。よろしくお願いいたします。

by Myate (2019-01-15 18:12) 

98式軍刀

Myate様、お久しぶりですね。

お訪ねの件ですが、LFS問題が修正されたという話は今の所聞いていません。

そもそもこの問題、Windows8以降とWindows7以前の環境が混在している条件でハードディスクやUSBメモリ等のストレージデバイスを使いまわすという非常に限られた条件下で起きる事なので、実際に被害に遭う人は極めて少数という事から世間ではまったく問題にされていない現状があります。(企業内等ではファイルサーバーなどを活用しますし、USBメモリ等の使用を禁止している所も多いですから)

なのでWindows10への移行を推進するMicrosoftの立場ではあえて修正せず、問題があるなら一刻も早くWindows10への完全移行をお願いします、という事だと思います。


二つ目の件はおっしゃる通りバックアップを活用する事が一番だと思います。

私の場合は双方の環境を往復するストレージには、出来るだけそこにしか存在しないデータを作らないようにしています。

またLFSのバージョンに関しては、私の場合他人のパソコンを触る事が多いためにWindows10側を修正する事は無理があるので、USBメモリやUSB接続のハードディスクを取り外す際は必ず正規の取り外し手段を用いています。
それでもUSBメモリで「スキャンして修復しますか」というメッセージが出るケースがこれまで何度もありましたが、そのような時はエラー修復せずに一旦ファイルを全てバックアップしてからフォーマットして書き戻す事で、消えてから全てをバックアップを使って復旧するより短時間で復旧する事が出来ています。

他の方法としては、ファイルの移動を行うためのストレージのフォーマットにNTFSではなくexFATを使う方法があります。
exFATならばLFSの問題を回避する事が可能なので、exFATの長所と短所を理解したうえで利用する事もありだと思います。

なお、コンピュータを利用するうえでファイルが消える要因はこの問題以外にもいくらでもありますので、消えて困るようなファイルは二重三重にバックアップする事をお勧めします。


by 98式軍刀 (2019-01-15 21:26) 

Myate

>98式軍刀 さん

ご返信、誠にありがとうございました。
また、色々と詳細なアドバイスを頂きまして感謝しております。
m(_ _)m

>そもそもこの問題、Windows8以降とWindows7以前の環境が混在している条件でハードディスクやUSBメモリ等のストレージデバイスを使いまわすという非常に限られた条件下で起きる事なので、・・・

仰るとおりです。ただ、私が危惧しておりましたのは Windows 7 PC を Windows 10 へアップグレードした後で、内蔵HDD内のデータ( Windows 7 環境で作成されたファイル)が、ある日突然消失したというケースが報告されている点でした。
これは、LFSバージョンの違う環境で外付けストレージを使い回すという問題とは少々異なりますが、この問題の発生頻度はさらに少ないようで、このケースそのものを認識している人はほとんどいないようです。

私が知る限りでは、この件は、マイクロソフトコミュニティーにトラブル情報として挙がってきた事が1度だけありました。
昨日まで使っていたファイル(やフォルダ)が、翌日には消えているという事がたびたび発生しており、しかも外付けディスクではなくアップグレードした内蔵ディスクの中で起きている、との事でした。

私の中では上記の件がずっと気になっておりましたので、Windows 10 というOSそのものに不信感を抱いておりました。

しかし、どこかのタイミングで環境を完全移行せざるを得ない状況であることも事実です。

やはり、仰るとおりバックアップが重要という結論になるようですね。
了解しました。現時点では前述のとおり Windows 7 (LFS1.1) 環境を1セット確保してバックアップ環境としようと思います。

ありがとうございました。
ヾ(⌒ー⌒)ノ

by Myate (2019-01-17 01:11) 

98式軍刀

>Myate 様

私の認識にズレがあったようですが、一応の結論に至ったようでなによりです。

ところで返信にあるWindows10移行後の内蔵ストレージでデータが消える問題ですが、これは恐らくWindows10は関係ないのではないかと推察します。

ストレージそのものか、エクスプローラ等のソフトウェアか、人為的なミスである可能性が高いと思います。

by 98式軍刀 (2019-01-18 21:03) 

4TByteのデータを失った者


 情報ありがとうございます。

 この事象と思われる障害で、4TByteのデータを失いました。

 要約すると、Win8以降とWin7以前が、それぞれ勝手に動いて、勝手にファイルシステムを破壊すると言うことですね。

「Windows 7ではWindows 8以降の新しいLFS(Ver. 2.0)が認識出来ないためエラーが発生し、自動的にエラーの回復(chkdsk)を試みようとするので、その時にファイルシステムが破壊されるようだ。」
 マヌケな動作としか言いようがないですね。
 自分に理解できない仕様のディスクだったら、「このディスクは使用できません。」と表示して、何もしないのが良識ある動作だと思います。
 勝手に壊すのが、マイクロソフト流なのかな?

「Windows 8以降のPCにHDDを接続したら正規の手段で取り外す事を厳守する」
 これが確実にできるほど、Windowsには安定性はないですね。
 ファイルシステムを変更するなら、変更前に確認を求めるのが当然だと思いますが、勝手に変更して、後で何が起こっても、知らんぷりがマイクロソフト流のようですね。

 これまでも、マイクロソフトの技術力の低さに驚いていましたが、ここまでとは思っていませんでした。
by 4TByteのデータを失った者 (2019-04-22 18:38) 

98式軍刀

4TByteのデータを失った者 様、コメントありがとうございます。
件のトラブルでデータを失ったとの事、さぞ大変な事だったと思います。

ところでマイクロソフトの技術力について仰っていますが、マイクロソフトに限らずコンピュータに関係するモノ全てについて同じ事が言えると思います。

例え信頼に置けるものであっても、万が一の備えは必要です。
消えては困るデータがある人は、二重三重のバックアップをお勧めします。

私の場合はデータだけでなく、ハード、ソフトについても、ハードはパソコン本体だけでなくパソコンを構成する全ての部品、ソフトはバージョン違いや同じ用途の別の製作者の違うソフトよ何時でも使えるようにしておくなど、様々な障害を想定したバックアップ体制を保持するよう心がけています。
by 98式軍刀 (2019-04-23 20:40) 

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0