web-dev-qa-db-ja.com

削除されたファイルのリストを表示

約30日前にrm -f *.gzを実行しました。削除されたファイルのリストを見つける方法はありますか?

2
Cartwig

debugfsユーティリティを使用できます。

debugfsは、デバッグ目的で特別に設計された、使いやすいRAMベースのファイルシステムです。

まず、ターミナルでdebugfs /dev/sda2を実行します(/dev/sda2を独自のパーティションに置き換えます)。

デバッグモードに入ると、コマンドlsdelを使用して、削除されたファイルに対応するiノードを一覧表示できます。

Linuxでファイルが削除されると、リンクは解除されるだけですが、iノード(ファイルが実際に存在するディスク内のアドレス)は削除されません。

これらの削除されたファイルのパスを取得するには、debugfs -R "ncheck 320236"を使用して番号を特定のiノードに置き換えることができます。

Inode   Pathname
320236  /path/to/file

ここから、catを使用して削除されたファイルの内容を検査することもできます。 (注:必要に応じて、ここから回復することもできます)。

参照 ここ


今後の予防策として、Inotify Toolsを使用します。次に、inotifywaitコマンドを使用して、指定したディレクトリで発生するイベントをリッスンできます。

特に、削除されたファイルやフォルダを監視したい場合は、これを使用してください

inotifywait -m -r -e delete directory_name

この出力をいくつかのファイルに記録します。

また、 iWatch を探すことをお勧めします。

5
Rahul