投稿

5月, 2014の投稿を表示しています

Linuxで消したファイルを復活させるには・・・?

我が家のネットワークでは、debian上でsambaをファイルサーバーとしているが、誤ってファイルを削除してしまうことがある。

そう言った事態に備えて、定期的にミラーリングバックアップを自動で撮るようにしているが、しかし、それは一部のディレクトリであり、テレビ録画や、動画などの大容量ファイルは対象としていない。

ところが、動画編集の際、エンコードが終わったと思って元ファイルを削除したが、ファイル名をつけ誤り、それが元で、エンコード前の別の元ファイルを削除してしまった・・・。

こうなってしまっては、LinuxにはWindowsのようなゴミ箱昨日は無いので、ファイル復旧は出来ない、ということになっている。

こういった事態に備えるために、Sambaサーバーでゴミ箱機能を提供していたりするが、このサーバーでは導入していない。

そこまで重要なファイルでは無かったものの、これが超重要なファイルだったりすると一大事!

そう言った事態に備え、近亜紀ファイル復元にチャレンジしてみた。結論から言うと成功したので、備忘録として残しておこうと思う。

ファイル復元の方法は、extundeleteというツール。参考としたのは、こことか、ここなど。

このサーバーのファイルシステムはext3なので、このツールが使える。

まずは速攻で、対象ファイルのあるドライブをアンマウント。

# mount -o remount,ro /mnt/sdb1

そして、synapticsからextundeleteをインストールしようとしたが、対応していないらしい。仕方がないので、ソースファイルをダウンロードし、インストールすることにした。

手順としては、こんな感じ。

# cd /tem
# mkdir a
# cd a

$ tar -jxvf extundelete-0.2.4.tar.bz2
$ cd extundelete-0.2.4
$ ./configure

すると、こんなメッセージが。

Configuring extundelete 0.2.4
configure: error: Can't find ext2fs library

ext2fs libraryがインストールされていないらしい。これはsynapticsに対応していたので、そちらからインストール。

そして再び、

$ ./configur…