削除してしまったファイルを復元する【Linux】

誤って削除してしまったファイル。上書きで消してしまったファイル。しかし、まだ救い出せるかも知れません。ext4magic を利用した救出方法をメモ。

ext4magicの使い方

用意するもの

  • Linux のLiveUSB

ext4magicで操作できるのはアンマウント状態のファイルシステムです。外部から操作する必要があるのでLiveUSBを挿してコマンド操作します。

コマンド

Documentsディレクトリにあったtest.txtを復元すると仮定します。

$ sudo apt install ext4magic -y 
$ sudo fdisk -l
$ sudo ext4magic /dev/○○○ -l | grep test.txt
$ sudo ext4magic /dev/○○○ -r -f 'home/Documents/test.txt' -d '[TARGET DIR NAME]'

かんたんな説明

ext4magic が大抵入ってないのでインストール。(1行目)

fdisk -l でファイルシステムをリストアップ。対象ファイルのあるデバイス名を確認します。(2行目)

ext4magic [DEVICE NAME] -l で割り当てられていないファイル名をリスト化し、grep で一致したファイルを表示します。-L オプションにすると全てのindex nodeファイルを対象にリストアップする。(3行目)

ここで復元したいファイル名が表示されれば、復元できる可能性高め。

-f でファイル名、 -d は出力先ディレクトリを指定します。dオプションが未指定の場合は、カレントディレクトリに「RECOVERDIR」ディレクトリが生成されそこに出力されます。(4行目)

絞り込みオプション

-a 、-b で対象時間の絞り込みができます。(それぞれ、after before の意味)

例 2021年4月9日のAM7時から10日のPM3時まで。

$ ext4magic /dev/sda -a $( date -d '2021-04-09 07:00' +%s) -b $( date -d '2021-04-10 15:00' +%s) 〜

2日前から1日前までの間 などは、

$ ext4magic /dev/sda -a $( date -d '-2day' +%s) -b $ (date -d '-1day' +%s) 〜

でも可。a b どちらかを細かく日時指定しても可。-2day -1day は、-a または -b からの相対日時ではなく、現在から数えた2日前、1日前なので注意。

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