質問
突然、すべてのファイルが次から出ます。2015年2月到着2016年11月持つ消えたファイルシステムから。
コンテキスト
- 過去2年間、停電やUSBハードウェアの切断により、システムが数回突然シャットダウンしました。
- この損失は、不良ブロックやそのようなものによるものではないようです。ソフトウェア関連の内容が多いようです。
vmdk
このディスクは、VirtualBox Ubuntuに接続されたUSBハードウェアベースのRAID-5のフラットフルサイズファイルです。- RAID と VirtualBox を使用するホストは Windows です。
- WindowsのRAIDはNTFSで、VirtualBoxはUbuntuを実行し、ext4形式のvmdkにアクセスします。 Windowsは、複数の仮想マシンを含む以外の機能を実行せず、仮想マシンを起動または停止する以外に、ユーザーはそのWindowsには入りません。
状態
私は毎日このディスク(Ubuntuの)をたくさん使っています。そして、前日、先週、先月などのファイルを毎日正常に使用しています...再起動後も...だからデータがそこにあるはずです。
しかし、突然...私のDropboxがファイルを削除し始め、何が起こっているのか見に行きましたが、問題は...これが「すぐに」発生したのか、再起動後に発生したのかわかりませんでした。
しかし、問題は...私が見ることができる最新のファイルは2015年1月のファイルで、2016年11月まで毎日このディスクを正常に使用しました。ファイルがブロックにある可能性があり、何らかの理由ですべてのインデックスが失われました。
ext4
何らかの理由でi-nodeテーブルのバックアップコピーが保存されるか、または同様のものが発生し、何らかの理由でLinuxがマッピングを以前のマッピングに「元に戻す」ことにしたと簡単に想像できます。
道具がたくさんあると思います。 fsckの実行からextundeleteまで。
私が見るもの
行為:
find . -newermt 20150201
結果はまったくありません。
また、
- 私が知っているファイルの場合は、
cd
そのディレクトリに移動しましたが、そこにあるファイルを見ることはできません。 - 私が知っているディレクトリ構造が削除されたことがわかります。
- これは、仮想マシンに複数のディスクが接続されている場合に発生しました。
ext4またはNTFS?
Windowsで仮想ディスクを含むRAIDを削除しvmdk
、Linux上で読み取り専用としてマウントしました。
私が見ることができるファイルをリストすると、次のようになります。
root@vagrant:/mnt/raid5/mnt# ls -la
total 1572864014
drwxrwxrwx 1 root root 4096 Jan 29 2015 .
drwxrwxrwx 1 root root 4096 Oct 31 21:14 ..
-rwxrwxrwx 2 root root 268435456000 Jan 26 2015 LinuxData250G_A-flat.vmdk
-rwxrwxrwx 2 root root 651 Jan 26 2015 LinuxData250G_A.vmdk
-rwxrwxrwx 2 root root 268435456000 Jan 26 2015 LinuxData250G_B-flat.vmdk
-rwxrwxrwx 2 root root 558 Jan 26 2015 LinuxData250G_B.vmdk
-rwxrwxrwx 2 root root 536870912000 Jan 26 2015 LinuxData500G_A-flat_3.vmdk
-rwxrwxrwx 2 root root 536870912000 Jan 26 2015 LinuxData500G_A-flat.vmdk
-rwxrwxrwx 2 root root 559 Jan 26 2015 LinuxData500G_A.vmdk
問題のディスクはLinuxDataXXXG_Y-Flat.vmdkです。
驚くべきことに...このすべてのアイテムの修正日は2015年1月26日です...ディスクの内容が失われる直前...2015年2月からファイルは表示されませんが、2015年1月を見ました。文書。
私はLinux内部のEXT4の問題ではなく、NTFS自体の問題かどうか疑問に思います。 VirtualBoxの下位レベルのドライバがホストファイルの時刻または「生成」時刻を更新するかどうかはわかりません。
RAIDにはvmdkのコピー全体を保存するスペースがないため、失われたデータが何らかの形で存在する必要があります。
画像のコピー処理
元のバージョンの「イメージ」を作成し、vmdk
RAID全体を削除したため、コピーが少し「破壊的」になる可能性があります。
問題は、バックアップイメージ全体をコピーするのに20時間かかるため、試行錯誤を冗談にしたくないので、正しいツールを正しい順序で使用したいということだ。
進行中にエラーが発生すると、1日遅れます。
質問
データがそこにあると仮定すると... ext4で始まると仮定すると、iノードテーブルを使用できます。
- Q1) i-node マッピングを復元したり、最初から新しい i-node テーブルを再生成するには、どのツールセットが必要ですか?
- Q2)具体的にどんなものがありますか?注文するこれらのツールを実行する必要がありますか?私の言葉は、fsckを実行するとextundeleteが中断されるか、その逆の場合が発生する可能性があるということです。
- Q3)iノードテーブルは、このために予約されている特別なパーティション領域に頻繁にバックアップされますか?どこ? 「最後の日」でなければ、少なくとも2016年11月中旬にテーブルのバックアップを見つけるのに十分幸運でしょうか?
たぶん私は質問を間違っているかもしれません...
したがって、すべての問題を解決するための1つのリンク:Q)失われたファイルを回復する方法は?
答え1
USBはバックアップをプッシュできますが(実際にはまだ非常に遅いです)、USB経由のRAIDまたはUSB経由のTCP-NETWORKは(まだ)信頼性が高く高速ではないことが合意された意見です。
- 問題のあるファイルシステムを壊す前にバックアップしてください(リソースがある場合(追加の外部ディスクまたは十分なサイズのNAS))
- 1つにバックアップすると、ユーザーはすべてのツールを安全に実行できます
- はい、fsckで始めてください。
fsck -y -v -f /dev/sdX
- また、起動時に(オペレーティングシステムが起動する前に)自動的にスキャンされるようにパーティションを設定することをお勧めします
tune2fs -C 2 -c 1 /dev/sdX1
(ext3およびext4のみ)。 apt install testdisk
->photorec /dev/sdx
-> NTFSおよびext4ファイルの内容を再インポートしますが、/directory/struct/and/filename.jpgはインポートしません。 :(
頑張ってください:)