マルチブート – ハイバネーションして別の OS に起動する: ファイルシステムは壊れますか?

filesystem-corruption filesystems hibernate multi-boot

IMPORTANT

この質問の答えを探してここに来た人は、以下のすべての答えを読んでください。これをやってデータを失った人の証言があります。あなたが定期的にこれを行う予定であれば、私は非常に自分自身のためにテストすることをお勧めします


Original Question

同じコンピュータにWindowsとLinuxがインストールされているとします。Windows を休止状態にした場合、Windows を再開したときに Windows のファイルシステムを壊さずに Linux を起動できますか?その逆はどうでしょうか?一方を休止状態にして、もう一方を起動し、休止状態のファイルシステムを読み書き可能な状態でマウントしたらどうでしょうか?読み取り専用ですか?これが安全でない場合、もう一方のOSの冬眠状態を検出して、そのOSのファイルシステムをマウントできないようにする方法はありますか?

基本的には、壊れる前にこれをどこまで押せばいいのか、端の近くではどれくらい危険なのか。私は上記の質問のいくつかの答えを知っていると思いますが、他の質問については、私は見当もつかないし、明らかな理由のために私は自分のコンピュータでこれをテストしていません。誰かがこれらをテストした場合は、私たちの残りの部分を啓発してください。私は必ずしも全ての質問に具体的な答えを求めているわけではなく、合理的な部分を答える回答であれば、どんな回答でも受け入れます


EDIT

私が「ハイバネート」と言ったのは、RAM の内容をハードディスクに書き込み、コンピュータの電源を完全に切ることを意味しています。この状態でコンピュータの電源を入れると、BIOSとブートローダが再び起動し、理論的にはマルチブートシステムで別のオペレーティングシステムを選択することができます。とにかく、元の質問に戻ります


My Results

OK、これは動作することを皆の保証の後、私は自分自身のためにそれをテストしました。私はUbuntuを設定して、ハイバネーションする前にすべてのntfsファイルシステムと外付けドライブを読み取り専用にリマウントしました。WindowsはLinuxのファイルシステムを読み込まないので、同様のWindowsのセットアップの必要はありませんでした。その後、私は何度か行ったり来たりして、一方のオペレーティングシステムをハイバネーションして、他方のオペレーティングシステムを再開することを交互に試してみました。さらに、UbuntuからWindowsのファイルシステムを読み書き可能な状態でマウントして、いくつかのファイルを作成してみました。Windowsは、私が再開したときに文句を言うことはありませんでした。結論から言うと、デュアルブートのWindows/Linuxのシナリオでは、多かれ少なかれ自由にハイバネートすることができます

Linux/Linux の共同休止状態をテストしていないことに注意してください。2つ以上のLinuxをインストールしていて、そのうちの1つをハイバネーションした場合、別のものからマウントすることでファイルシステムを破損させることができるかもしれません

  55  Ryan C. Thompson  2009-09-11


ベストアンサー

ハイバネーションしたLinuxの上でWindowsを起動するのはよくない。共有NTFSパーティションで20GiBのデータを失ったばかりなのに

ある日、Ubuntu Lucidをハイバネーションして、次の日にはパソコンを起動しました。何かのアップデートでGrubの保存オプションがめちゃくちゃになってしまったので、そのままUbuntuを再起動するのではなく、Windows7が起動してしまいました。私は私のコーヒーで戻ってきたとき、私はちょうどUbuntuがクマモードであったことをリコールせずにそれを使用して行きました。おそらく共有パーティションから音楽、Firefoxのプロファイル、ドキュメント、ダウンロード、ゲームなどにアクセスしていたのだろう.

次にUbuntuに切り替えたときに「休止状態からの覚醒」というメッセージが出てきた。くっそー。しかし、私はそれがウェイクアップに失敗し、代わりにソフトリブートすることを期待していました、前回私がこれを「試してみた」ときに起こったように(私のカルマの時代に)。しかし、いや、ちゃんと起きました。かっこいい。そうでないかもしれません。共有パーティションのルートにあるディレクトリが空になっていることにすぐに気がつきました。再起動時に共有パーティションにアクセスしているプログラムはQuod Libet(音楽プレーヤー)とTransmission(bittorrentクライアント)だけだったと思います

Windowsに戻っても、ディレクトリを開くことすらできませんでした。シェルで「dir」しようとすると、「file not found」と表示されました。破損している。それでも、パーティションの空き容量は増えていなかったので、私の20GiBはおそらくまだそこにあって、上書きされないように安全だった。多分。しかし、どのようにしてそれらを得ることができますか?

少しの調査ではほとんど助けにならず、私の希望はさらに暗いものとなりました

私は、データをさらに破壊することで修復されるリスクを冒したくなかったので、自動修復をせずに Scandisk (“Check for Errors”) を実行しました。結果はあまり参考になりませんでした。自動修復で実行”私には不明でしたが、どうやら次回起動時に自動的にチェックするパーティションをマークしていたようです。私は電源を切ってどこかへ行き、後でEasyRecoveryを使って戻ってきました

いつものように私が注意を払っていない状態でコンピュータが起動し、見てみると、chkdskはすでに本格的にエラーを噴出していた。まあいいや、ここでは何も起こらない

幸いなことに、私は最近サンタテクラのためにロウソクを灯しました、そしてWindowsが起動した後、私のデータは、私が知る限りでは、それのすべてが戻っていましたが、いくつかのファイルはfound.000で終了しました

そう、これはハッピーエンドでした。ドラマチックなサスペンスではありますが、これは、データのバックアップを取ることをお勧めします。そして、(私の場合は)バックアップを最新の状態に保つこと!そしてもちろん、ハイバネーションや共有パーティションには特に注意してください。そしてもちろん、ハイバネーションと共有パーティションには特に注意してください

20  Chema  2010-05-02


私はいつも何か他のもので起動する前にWindowsを休止状態にしています、Windowsはゼロから起動するにはあまりにも遅いだけです。しかし、ハイバネーションされたOSのパーティションに書き込むのは危険です

しかし、そのパーティションを読み取り専用でマウントすれば、ハイバネーション前と全く同じ状態になり、Windowsは何も気づかないでしょう

普通にマウントして、システムファイルには近づかないようにするという提案は、あまり良い考えではありません。ファイルの内容の再配置、MFTの変更、アクセス時間の属性の変更など、ファイルシステムを著しく破損させる可能性があります。FATではそれほど危険ではありませんが、NTFSではもっと複雑で、メモリ内の状態がはるかに多いので、本当に危険です

25  vava  2009-09-11


私は定期的に私のWindows XPをハイバネートし、UbuntuにUSB経由で起動します。 完璧に動作します

スタンバイ」モードと「ハイバネート」モードには違いがあります。 OS の状態は完全にディスクにフラッシュされ、ハードウェアの電源はオフになっています。 マシンの電源を入れて他の OS を起動しても、ハイバネートされた OS には何の影響もありません。 ハイバネートされた OS を好きなだけ保持することができます

例として、あなたは複数のUbuntuのインストール(例えば、USBフラッシュドライブごとに1つ)を持つことができ、そして、それぞれをハイバネートし、ドライブを抜いて、別のものに起動します。 スタッキング/チェーン効果がないので、ここではエッジはありません。 この例では、ハイバネーションされたUSBスティックは、すべて互いに独立しています(電源サイクルマシンをまたいで)

ハイバネーションされた “C:\” ドライブを使って別の OS を起動する場合の小さな欠点は、ハイバネーションされたブートパーティションを新しい OS にマウントできないことです。 パーティションは冬眠状態でロックされています。 その状態で編集すると壊れてしまいます

9  nik  2009-09-11


共有NTFSパーティションでデータ消失問題が確認できます。私はLucid Lynx UbuntuとWindows 7をデュアルブートしています。Windows 7を休止状態にしてUbuntuで起動した後、(7日間かけて)3台のVirtualBox仮想マシンを構築し、それらのマシンに様々なソフトウェアパッケージをインストールしました。Windows 7 で再起動すると、ファイルが消えてしまいました。消えました。 ntfsundeleteとforemostはそれらを見つけることができませんでした

そこで、実際にこれがデータ消失の原因になっているのかどうか、一連のテストをしてみました。Windows 7をシャットダウンし、Ubuntuを起動し、いくつかのファイルを書き込み、Windows 7に再起動すると、ファイルは常に保持されます。Windows 7をハイバネーションして、Ubuntuで再起動して、いくつかのファイルを書き込んで、Windows 7に再起動すると、新しいファイルは消えてしまいます

ファイルに書き込まれたCHANGESが保持されるか失われるかはわかりませんが、共有NTFSパーティションに追加された新しいファイルやフォルダは、この状況では失われる可能性が高いです

9  CtC  2010-05-10


あなたが言及したことには何の問題もありません。ハイバネーションされたファイルシステムをマウントしたとしても、ハイバネーションの内容はディスク上の大きなファイルに保存されます – このファイルや重要なシステムファイルに触れない限り(明らかに)、何も起こりません

システムの電源を切った後に他のOSからパーティションの内容を変更しても、元のパーティションは問題なく起動します。ハイバネーションでも同じです

パーティションをマウント/アンマウントする際に、システムファイルやドライブヘッダ情報(MBR、ファイルジャーナルなど)を破損しないように注意してください – この点はハイバネーションとは何の関係もありません

4  Breakthrough  2009-09-11


Windows XPとWindows 7の間の共有物理ドライブ(FAT32)で問題が発生しました。Windows XPを休止状態にして、数日間Windows 7を起動した後、XPに戻しました。現在、共有ドライブ上のファイルシステムが破損しています。ディスクチェッカーを実行していますが、かなりひどい状態です。ほとんどがクロスリンクされたファイルですが、何千ものファイルがあります

4  Daniel  2011-02-03


これはちょっと古いですが、重要な問題なので、別の証言は価値があります

私は外付けのNTFS USBハードディスクを持っていて、2つの異なるPCでデータ(OS関連のファイルはありません)に使用しています。問題を特定するまでは、常にデータが失われていました。1台のPCはかなり古くて遅い(Windows XP)ので、再起動時間を早くするためにハイバネートを使い、その状態でハードディスクを切り離し、もう1台のPC(Windows 7)でデータを書き込んでいました。データ消失は毎回発生していたわけではありませんでしたが、このシナリオでは確実に発生していました。それをやめてからは、それっきりになりました

4  user3671607  2014-07-31


hibernateとマルチブートの問題に遭遇しました。状況です。UbuntuとWinxPのマルチブートだが、両方のOSでデータパーティションが見える状態。ちょっとテストをしてみました…前後して…。そこで、WordでWordファイルを編集していたのですが・・・。ファイルを保存してWordを閉じました。ハイバネーション…Ubuntuを起動…OpenOfficeで同じファイルを編集…ハイバネーション

ハイバネーションしたWinXPに再起動。Wordは変更を見ていない…それは単に別のファイルのように見えた

逆にこのテストもしてみました…。2回目はファイルが壊れていた…。私はファイルを開いたり、ファイルを削除することができませんでしたChkdsk ‘解決’問題は解決したが、ファイルが失われました…別のテストでは、Ubuntuも編集したファイルを見ていませんでした

ハイバネーションと同じパーティション(OSが起動するパーティションである必要はありません)を使用している場合、非常に危険です…私のテストでは、ファイルが破損する可能性があり、それを繰り返すことができます…ちなみに: 私のテストでは、常にファイルを保存してアプリケーション(WordとOpenOffice)を閉じてからハイバネートに入るようにしていました….!私はパーティションのマウントが原因だと思っていましたが、問題はファイルキャッシュか何かにあるに違いないと思います…いずれにしても。マルチOSのハイバネーションには気をつけてください….!ArnoRさん、よろしくお願いします

3  None  2009-11-11


Windows(Vista)とUbuntu(9,10,11)のデュアルブートで以下のような破壊力の高い体験をしました。私は、WindowsとDOSの使用と設定の経験は長いのですが、技術的なユーザーではありません。私は、Win Vistaマシン上のライブCDを介してUbuntuをインストールしました。これは完璧に手続きを行い、私は時間がない中でデュアルブートを起動して実行していた.Ubuntuのインストールに添付された警告がなかったように見て, 私は(世間知らずに)私は両方のシステムをハイバネート(ディスクに保存, サスペンドしない)とそれらの間で自由に切り替えることができることを想定していました.これは以下のような結果をもたらしました

1) Windowsで開いていたのを忘れていたUbuntuでテキストファイルを編集してしまいました。その後、そのファイルはどちらのオペレーティングシステムからもアクセスできませんでした。削除することもできませんでした。Chkdskでようやく削除できましたが、データは失われてしまいました

2) 他にも、Ubuntuから直接Winパーティションに2つのファイル操作を試してみました。OpenOfficeからpdfファイルを生成する, とWinデスクトップ上のディレクトリ/フォルダを作成する.両方ともWindowsからアクセスできませんでした (彼らはWinエクスプローラで見ることができましたが).chkdskはWindowsから完全にその後delteにその後実行されなければならなかったが、幸いにも彼らは、Ubuntuから削除することができました

3) 大きな OpenOffice Writer ファイル(*.doc として保存)は、最初に一方の OS で編集した後、他方の OS で何度か編集しました(編集した時には他方の OS では開いていませんでした)。ファイルを*.odtドキュメントとして保存したところ、サイズは大幅に縮小されましたが、保存/読み込み時間は速くなりませんでした。ファイルを解凍すると、その「コンテンツ」の部分が22MB以上あることが判明しました。これにテキストエディタでアクセスしてみると、ドキュメント内の単語やスペースの一つ一つが同じスタイルで別々にフォーマットされていることが判明しました。私は最終的に、巨大版と同じファイルの以前のバージョンを比較し、古いバージョンを基準にして、すべての変更を受け入れて保存することで問題を解決しました

4) この時点で私はUbuntu 10からUbuntu 11にアップグレードし、11システムは私の目的のために完全に受け入れられない新しいUnityインターフェースを排他的に使用していることを発見しました。私はUbuntu 11にGnomeをインストールする方法を考え出したとき、それはGnome 3がGnome 2にはるかに劣っていたことが判明した。そこで私はUbuntuを完全にアンインストールして、新しいUnityシステムの痕跡を残さずにGnome 2を使っているKarmic Koalaを新たにインストールすることにしました。これは複雑であることが判明した, しかし、オンラインでいくつかのマニュアルで繰り返される全く同じ手順を見つけた後, 私は手続きを行った.EasyBCD 2.1.2 (windowsから)を実行するまでは、すべてがうまくいきました。これは、UbuntuのGrub booterが削除された後、Windowsに直接再起動できるようにしてくれます。再起動で, 私は私のMBRが致命的に破損していたことがわかり、マシンは、任意のブート可能なハードドライブを認識しませんでした.私は技術者にお金を払ってMBRを復元する必要がありました

5)今、私は再びVistaに起動することができ、私はいくつかのファイルがランダムに私のシステムから消え始めたことを発見したときに、私は、Ubuntuを再インストールする準備をしていました。明らかにファイルシステムはまだ破損していました。Windowsの完全な再インストールだけが問題を解決し、私は今、Karmic Koalaをインストールする前に、将来的に同じような問題を避けるために何をすべきかを非常に慎重に検討しています。私の問題がハイバネーション問題に関連していることを願っていますが、念のため、別の「転送」NTFSパーティションを作成して、一方のオペレーティングシステムから他方のオペレーティングシステムにアクセスする前にファイルを置くことができるようにしようと考えています。現実的ではありませんが、安全なはずです。そう願っています

3  Finn  2011-12-15


やらないでください(またかよ!)

私はVista/NTFSをハイバネーションしてLucidを起動し、共有ntfsパーティションで3日間働き、ファイルやディレクトリが消えたり、厄介なエラーメッセージとともにロックされたりするようになりました(Lucid内で)。Windows に戻して起動すると、デスクトップがめちゃくちゃになっていました。うまくいけば chkdsk でほとんどの問題を解決できたので、found.000 から前に持っていたものの約 98% を取り出すことができました。 だから、絶対にやってはいけないことなのだ。 ハイバネーションされた」ntfsパーティションは、何かの理由でLinuxではマウントできなかったことをなんとなく覚えている。私はこの昔の動作に戻りたいと思っています

2  None  2010-05-12


危険です。私はまた、これはFAT32とNTFSボリュームの両方のための悲惨な問題であることを確認することができます & Windows(私はwindows 7を持っている)がハイバネーションされている場合にのみ。これはキャッシュに関連していると思い、ドライブを素早く削除できるように設定することを検討しました。これで解決するかもしれませんが、Windowsがサポートしていないようなパーティションをこの方法で設定したいだけなので、まだ試していません。OSX の ntfs ドライバでもパーティションごとのキャッシュ制御はサポートしているが、Windows はサポートしていないようだ。また、私のOSX ntfsドライバはドライブをマウントしてはいけないと認識しているようだ。この問題に関係しているようです。参考になれば幸いです

2  None  2010-05-13


ここで私の経験を紹介します。私はWindowsとKubuntu(11.04)のデュアルブートシステムを使用しています。私のファイルのほとんどはWindowsのNTFSパーティションにあり、私は主にLinuxからそれを使用しています。FUSEを使ってマウントしています

このようなことがありました

  1. Hibernated Windows
  2. 次のブートでは、Linux にブートして数週間使用しました – Windows にブートせずに
  3. Windows に戻しました(オンラインテストでは Internet Explorer でしか動かなかったので、なぜか ie4linux では不十分でした)

Windowsが再開されたとき、その2週間で作成されたファイルがすべて消えていることに気がつきました。確認のためにLinuxに再起動してみると、そこでもファイルが消えていました。WindowsがNTFSファイルシステムをハイバネーションしていた時の状態に復元して、その時点に戻したのではないかと推測しています

ntfsundelete や testdisk などのツールを試してみました。不足しているファイルはリストにありません。また、Windowsがハイバネーションしていてシャットダウンしていないのに、LinuxはRWモードでドライブをマウントしていました。Linuxが警告を出すか、読み取り専用モードでマウントしているのだと思いますが、ここではそうはいきませんでした

1  bladeWalker  2011-10-04


また、ハイバネート状態で2つの異なるO/S間でシステム以外のパーティションを共有すると、ファイルシステムが破損したり、データが緩んだりすることも確認できます

シナリオ: 私は3つのNTFSパーティションを持っています: 1.Windows XP 2.Windows 7 3.データ (互換性モードではうまく動作しない古いアプリのためにXPを使用しなければなりません)

例。パーティション1(XP)から起動し、3にファイルを保存しているThunderbirdを起動します。その後、ハイバネート(OSがRAMをハイバネートファイルにダンプしてPCをシャットダウン)。パーティション2(7)から起動し、3にファイルを保存しているThunderbirdを実行。ここで問題はファイルなどへのアクセスから始まります。パーティション1からの起動に戻り、OS_2_7で修正したファイルが再び破損し、さらに最悪の場合、ハイバネーション前に開いていたファイル(例:Firefox)が破損しています

そうですね。Hibernateの2つのO/Sは、彼らがシステム/非システムパーティションを使用しても、データが破損することはありません。なぜか?根本的な原因はファイルロックとMFTだと思います。ハイバネーションからウェイクアップした後は、MFTが更新されないので、古いセクタにあるファイルを探すことになり、サイズや場所を変更したファイルは破損してしまいます

1  Varso  2013-09-28


私も昔はまさにこれをやっていました。事故を避けるために冬眠中のマシンのシステムドライブをマウントしたことはありませんでしたし、それぞれのOSには別々のスワップパーティションがありました。しかし、私は専用のデータパーティションを持っていて、2つの休止中のOS間でデータを転送するのに使っていました。FirefoxとThunderbirdのプロファイルもそこに入れておいたので、2つのプロファイルを別々にしておく必要はありません。ただ、片方のマシンのFirefoxは必ず閉じてからハイバネーションするようにしてください

設定に問題があった記憶はなく、私もかなり長い間使用していました

0  Lie Ryan  2014-11-21


答えは、NTFSでは、明らかにそうです (他の回答を参照)。FATのような古いシンプルなファイルシステムで試すこともできます。しかし、それは暗闇の中の一刺しでしょう

ただ、この問題は仮想マシンでも再現できるということを付け加えておきたいと思います。私はデュアルブートマシンでVirtualBoxを使用しています。WindowsとLinuxの両方のパーティションにVirtualBoxのホストソフトをインストールし、イメージファイルを共有のNTFSパーティションに保存しています。狙いは、WindowsとLinuxの両方で同じVMを使えるようにすることでした

習慣で、VMをシャットダウンするときにVirtualBoxの “save machine “ステートコマンドを使いました。このコマンド(VMのRAMの状態をどこかに保存してくれる)を使って、ラップトップを別のOSに再起動して、再度同じVMを使ってみました。VirtualBoxには復元オプションがなかったので、どうやらVirtualBoxの別のインストールで状態が保存されていた場合、VirtualBoxはVMの保存状態を認識していないようです。VMwareの方が賢いかもしれないと読んだのですが、試していません

結局、すべての VM が破損してしまいました。しかし、私は fsck を使用してほとんどの損傷を修正することができました

これは、この問題を再現するために、何時間もかけてパーティションを分割したり、OSをインストールしたりする必要はないと言っているだけです

私の解決策は?Windowsではハイバネーションを無効にする。Ubuntuではデフォルトで無効になっています。また、異なるコンテキスト(異なるOS、異なるホストインストールなど)でVMを起動する予定がある場合は、VMのマシン状態を保存することは絶対にしないでください

誰かがこの問題に脆弱性のないファイルシステム(あるいはOSなど)を開発するまでは

また、ハイバネートする前に共有パーティションの開いているハンドルをすべて閉じて(おそらくディスクにフラッシュして)おくと、破損を避けることができると報告されています(Lie Ryan の回答を参照してください)。この状況では、安全のためにハイバネートを使わない方がいいと思います

0  Rolf  2015-05-16


ただ、これは無理だと思います

ハイバネーションすると、コンピュータはそのOSに「ロックイン」した状態になります。あなたはOSを休止状態にしているのではなく、コンピュータ全体を休止状態にしているのです。ハイバネーションから再開するときには、BIOSとPOSTの時間をもう一度通らないようにします

-3  Josh Hunt  2009-09-11


タイトルとURLをコピーしました