hack のためのネタ帳, etc,,,

状況

Ubuntu で Document Scanner こと simple-scan で、「20200923_〜」ってファイル名で保存した後、1枚目に修正があったので、再スキャンして「20200923_〜-1.jpg」に保存しようとしたところ、何をボケたのか、一番上の「20190616_〜-1.jpg」ってファイルを選択してそのまま上書き保存してしまった。
大して重要なファイルではないのが救いではあるのだが、snapshot 取ってなかったので、万事休す、という状況。

解決方法の探索

ZFS undelete」で検索したが容易さという点では有益な情報が得られなかったので、StackExchange で質問してみた。
disk 止めて photorec を使ってみては?というアドバイスを得た。
流石に 200GB の pool から JPG 全抽出された中から選別するのは辛すぎることもあって選択肢として視野に入ってなかったのだが、確かに有効な手段ではあるし、現状で他に有効な手段も見当たらないので、とりあえず、import した状態のまま /dev/sda1 に対して photorec をかけてみた。
import したままでも意外と問題はないもので、数にして2万強のファイルが recovered 出来たのだが、その大半はサムネイルサイズで、一応、一通り目を通してみたものの残念ながら目的のファイルは発見出来なかった。
しかし、不思議なことに削除してないファイルの大半も revovered されていないことに気付く。
しばらく、頭を抱えたのだが、ふと、当該 ZFS の compression に lz4 を設定していたことを思い出した。
そりゃ駄目ですよね。orz

ということで、大して大事じゃないデータではあっても、snapshot や backup を真面目に取っておくべきだなと痛感。
あと、compression 入れるとサルベージ面倒になるってのが考慮に入ってなかったのも反省点。

一方で、ファイルサイズや画像サイズが特定可能であれば、大量に画像ファイルがあっても find や identify 等を用いてある程度機械的にスクリーニング可能なので、特定のファイルをロストしてしまった場合において photorec は意外と使えるなという知見は収穫だったかも知れない。

しかしそもそもの話 undelete やサルベージしなけりゃいけなくなるような無様な運用してるのが論外なんだけれども。とほほ。

参考になりそうな資料

ZFS undelete」でググった結果、以下のようなページは見つけた。
ここで挙げられている、 及びそこで参考資料として挙げられている で紹介されてる zdb による解析方法は、根気あれば参考にはなりそう。
他にも、 も。

あと、 の 3 ページ目で、 が紹介されててここで公開されてる recovers deleted files できるそうなんだけど、なぜか Windows 用だったりとかいろいろと使い辛い。

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

Wiki内検索

フリーエリア

管理人/副管理人のみ編集できます