Ubuntu 12.04の下のNautilusで、パーティション上のいくつかのディレクトリを誤って選択し、それらを一度に削除しました(残念ながら、Shift + Deleteで削除して、ゴミ箱に残らないようにしました)。削除してから、まだそのパーティションに新しいデータを書き込んでいません。それらを回復するためにどのような方法を試みることができるのだろうか?パーティションはNTFSであり、Windows7とUbuntu12.04の間で共有されていることに注意してください。
以下は私がこれまでに試したさまざまなソフトウェアです。
Sleuthkitも使ってみましたが、使い方がわかりません。
110GBの96%使用済みのntfsパーティションでSudo fls -f ntfs -d -r -p /dev/sda3 > ~/deleted_files.txt
をほぼ1週間実行しています。まだ実行が終了しておらず(いつ実行されるかはわかりません)、ファイル~/deleted_files.txt
はまだ空です。パーティションにデータを書き込むことを敢えてしないため、すべての作業が停止しました。
私の場合、sleuthkitを使用することが、最近削除されたディレクトリとファイルを識別する最も簡単な方法であるかどうか疑問に思います。
Apt-getinstallを使用してTestDisk6.13をインストールし、 http://www.cgsecurity.org/wiki/Undelete_files_from_NTFS_with_TestDisk に従って、削除されたディレクトリとその中のファイルを復元しました。しかし、TestDiskによって示されるのは、 リンクの図 に示されているように削除されたファイル/ディレクトリ名ではなく、iノード番号で名前が付けられたファイルです。
TestDisk 6.13, Data Recovery Utility, November 2011
Christophe GRENIER <[email protected]>
http://www.cgsecurity.org
3 P HPFS - NTFS 9291 38 28 23650 187 25 230686720 [Data]
Deleted files
>inode_13285 30-Jan-2011 20:55 29427
inode_13285:Zone.Identifier 30-Jan-2011 20:55 26
inode_164258 11-Aug-2011 13:16 2993
inode_307016 12-Feb-2011 09:34 1808
inode_307017 12-Feb-2011 09:34 10254
inode_307018 12-Feb-2011 09:34 13155
inode_307019 12-Feb-2011 09:34 7586
inode_307020 12-Feb-2011 09:34 7344
inode_307021 12-Feb-2011 09:34 6943
inode_307022 12-Feb-2011 09:34 6081
inode_307023 12-Feb-2011 09:34 24043
inode_314965 12-Feb-2011 09:36 112947
inode_314983 12-Feb-2011 09:36 23581
inode_314984 12-Feb-2011 09:36 8486
inode_314985 12-Feb-2011 09:36 158
inode_314986 12-Feb-2011 09:36 45
Next
Use : to select the current file, a to select/deselect all files,
C to copy the selected files, c to copy the current file, q to quit
a
を押してからC
を押して、選択したすべてのファイルを選択してコピーすると、inode_xxxxxx
という名前のファイルが指定したディレクトリにコピーされます。
また、TestDiskによって表示される各ファイルの日付と時刻の意味がわかりません。削除日時ですか、それとも削除前の最終更新日時ですか? (TestDiskによって表示される最新の日時は2012年7月30日20:53であり、誤って削除された今日ではないことに注意してください。)
最近削除されたファイルを特定するにはどうすればよいですか?また、それらを回復するにはどうすればよいですか?
ファイルだけでなく、最近削除したディレクトリを見つけて復元できますか?
ハウツーへのこれらの2つのリンクが本当に機能するかどうかも知りたいです。
http://www.ehow.com/how_5202235_retrieve-deleted-files-linux.html では、grep -b 'search-text' /dev/partition > file.txt
を使用して削除されたファイルを検索します。
http://www.ehow.com/how_7517984_restore-overwritten-file-linux.html では、「Isdel」コマンドが使用されています。
TestDiskとSleuthkit以外にどのようなソフトウェアを試すことができますか?
Linuxのデータ復旧ツールは非常に奇妙でまれであり、NTFSファイルシステムで動作するツールはさらに多くあります。したがって、ファイルのメタデータを回復して提示するツールが必要な場合、それが提案されたものでない場合は、ntfsundelete、PhotoRec(Sleuthkit)、またはTestDiskです。このタスクにはWindows専用のツールを使用することをお勧めします。
fls -r
を使用すると、すべてのディレクトリを再帰的に通過しますが、ここでの目標に必要なものとは異なる場合があります。 fls
と同じように、よりインタラクティブな方法でls
を使用してみてください。また、mactime
を使用して出力を処理すると、関連するdir /ファイルに移動するのに役立ちます。
mactime
は、すべてのファイルをタイムラインに配置し、各ファイルが変更された(m
)、アクセスされた(a
)、(属性-)変更された(c
)または生まれた(b
)。ファイルは別々の時間に作成および変更できるため、同じファイル名が別々の行に表示されます。
たとえば、fls -m X: /dev/sda3 | mactime -b -
を使用して、時間順にソートされた最上位ディレクトリのリストを取得します。削除されたファイルは(deleted)
でマークされます。また、通常はWindowsエクスプローラーで非表示になっている多くのメンテナンスデータストアも表示されます。
NTFSの場合、ファイルシステム内のファイルIDを指定するx-y-z
のような3つの数字の組み合わせがあります。通常のディレクトリの場合、y
は144
にする必要があります。
fls -m X: /dev/sda3 x-y-z | mactime -b -
を使用して、関心のあるディレクトリのリストを取得します。
回復は、ファイルIDを使用して同様に行われます:icat /dev/sda3 x-y-z >recovered_file