次のプロセス中に誤ってPDFファイルを紛失しました
Ubuntu 18.04のWineでPDFソフトウェアアプリケーションPDFXCViewを実行して、ext4ファイルシステムでPDFファイルを開きました。
次に、どこか別の場所でPDFファイルをmv
します。
ここにいくつかの試みがあります。
参考になれば、失われたPDFファイルのパス名を覚えています。
ファイルシステムのパーティションをdd
でバックアップできませんでした。これは、パーティションに十分な容量を持つ追加のハードドライブがないためです。
https://unix.stackexchange.com/a/80285 に従ってdebugfs
を試しました
$ Sudo debugfs -w /dev/sda4
debugfs: lsdel
Inode Owner Mode Size Blocks Time deleted
22549259 1000 100600 141 1/ 1 Sat Apr 2 09:14:06 2016
1 deleted inodes found.
debugfs: logdump -i 22549259
22549259: File not found by ext2_lookup
ファイルは2016年に削除されずに失われただけなので、正しいiノードが見つかったかどうかはわかりません。
私は https://unix.stackexchange.com/a/98700/ で見ました
grep -a -C 500 'known pattern' /dev/sda | tee /tmp/recover
既知のパターンを含むテキストファイルを復元します。
少し前に、pdftk
を使用していくつかの小さいpdfファイルを連結することにより、失われたpdfファイルを作成しましたが、まだそれらの小さいファイルがあります。 1つの小さいpdfファイルから、cat smaller.pdf | less
で小さいpdfファイルのバイナリコンテンツを確認できます。これには、読み取り可能なpdf形式固有の文字列が含まれています
/URI (http://flask.pocoo.org/docs/1.0/api/#flask.Flask.logger)
だから私は試しました:
Sudo grep -a -C 500 'http://flask.pocoo.org/docs/1.0' /dev/sda4 > /tmp/test/recover
これらの小さなファイルと失われたファイルの両方に文字列が含まれており、-C 500
はファイルの開始と終了を指定するには任意であるからです。有用な結果が得られるかどうかはわかりません。
PDFファイルを復元する方法を知りたいのですが?
ありがとう!
可能な限り、データを残したままパーティションを残すことから始めてください(メインのシステムパーティションでない場合、1か月後でも回復できることに驚かれることでしょう)。次に foremost
に進みます(私は最初にmagicrescue
について言及しましたが、foremost
も同様に機能しますが、pdf
の準備ができています
Sudo apt update && Sudo apt install foremost
Sudo foremost -v -t pdf -i [PATH] -o ~/pdfrecovery/
# -t - Filetype [in our case pdf]
# -i - Input file [can be as wide as /dev/sdX or more detailed]
# -o - Output Directory
私は/dev/sdX
ドライブの1つで数秒間実行し、370個のPDFファイルをプルしました。ファイルには元の名前はなく、次のようになります。14348984.pdf
-i
フラグは非常に重要です。
幸運を。
2番目のオプションはtestdisk
/photorec
です。これは、既知のパスを処理する場合に簡単です。 testdisk
とphotorec
にはいくつかの注意事項がありますが、注意しないと(変更を適用するかどうかを尋ねる複数のダイアログが偶然に確認された場合)ディスクの損傷につながる可能性がありますが、時間がかかるため、より適切で高速になる可能性がありますおそらくあなたの行方不明のファイルに対応するノードを持つ良いフォルダツリー構造を示しています。 foremost
を含むファイルが2時間以内に見つからない場合は、コメントを投稿してください。そうすれば、2番目のtestdisk
アプローチを提供できます。
テストしたところ、testdisk
は、特定の削除されたファイルを見つけるという点でforemost
を打ち砕きました。フォルダーツリーとファイル名の構造を完全に維持し、すべての*.pdf
ファイルの作成に費やす時間を制限しました。 2つのアプローチは大きく異なります。ファイルが非常に重要な場合は、testdisk
とforemost
の両方を使用して同じファイルを特定し、破損していない完全なファイルが確実に得られるようにします。