紹介する

紹介する

紹介する

誤ってひどいことをした。ls代わりに、私が作成したスクリプトの後に表示された数日前、ディレクトリのコピーの代わりに現在のディレクトリにいくつかのコマンドを入力してcd実行しましたが、期待した効果はありませんでした。rm -rfmnt

ここにはすでに同様の質問があることを知っていますが、包括的な質問はありません。私はこの「機会」を通じて、後で他の人が参照できるように公に回答を提供するシリーズを始めたいと思います。

photorecたとえば、使用の提案がありますtestdisk。これが最善の解決策ではないかもしれません。別の答えを見つけましたが、ここ、推奨されますlocate。私はそれについて、またはそれがどのように機能するのかわかりません。

私のシステム

私のシステムはテストブランチを追跡するDebian 10システムです。データはext4形式でSSDに保存されます。私が間違った場所にあることに気づいたとき、rm -rf私はコンピュータの電源ボタンを押してコンピュータをシャットダウンしました。

解決手順

別のDebianシステムを実行している別のノートブックがあります。 SSDをコンピュータから取り出し、外部USB-Sataコネクタに接続しました。

これで、システムがデバイスにデータを書き込めないようにインストールする必要があると思います。どうすればいいですか?

locateその後、この方法(リンクされた質問)を使用してデータを再インポートできますか?何かをする前に、これが正しいことを確認したいと思います。

データは重要ですか?

はい。私が削除したディレクトリには、私の博士号のすべてのコードが含まれていました。まだ数週間が残っています。ここ数週間で行われたすべてのタスクを使用して再実装できる古いバージョンがあります。しかし、その短い時間の間私はたくさん変わった。今週、私の研究で「画期的」がありました。コードの書き方は、コードの再実装が決して単純ではないことを意味します。

バックアップはありますか? (編集する)

私が間違いなく知っている唯一のことは、私が所有しているサーバーに日付があることです2 May 2020。私はほぼ24時間働いているので、それ以来多くのことをしてきました。

そこ可能このSSDには別のバックアップがありますが、その一部は私のホームディレクトリにあり、そのバックアップが削除され、rm -rfバックアップスクリプトが期待どおりに機能しないため、そこに通常のバックアップがない可能性があります。 (コピーされる不思議なものを削除しようとすると、やっと詰まってしまいました。)

現在の日付を確認するためにSSDにアクセスできません。データを書き込めないように(可能であれば)インストールする方法を知っておく必要があります。

5月2日のものだけ持っていたら本当に悪かったでしょう。私は最近数時間狂ったように働いてきたので、おそらく今朝起きて誤ってそれを台無しにしたようです。

ベストアンサー1

考慮すべき事項は次のとおりです。

  • まず、ディスク全体のコピーを作成します。ディスク自体ではなく、dd if=/dev/sdX of=image.img bs=1M status=progress
    このコピー(たとえば)を処理します。photorec image.img

  • 私の(長期)経験として見ると、多くのファイル形式よりも優れていますforemostphotorecファイルの種類に応じて、カスタムファイルヘッダーをに追加することを検討することもできますforemost。これは過去に私にとって大きな助けになりました。私の答えでparamount / photorecに関する追加情報ここ

  • これ私の答えは、修復された干し草の山で利用可能なファイルを見つけるのに役立ちます。

  • SSDをインストールしないでください。コメントですでに指摘したように、読み取り専用でマウントするだけでは、上書きを防ぐのに必ずしも十分ではないかもしれません。画像を処理しますdd

さて、私はしばらく前に学びましたが、実際にあなたに役立つ(興味深い)コツがあります。

私が削除したディレクトリには、私の博士号のすべてのコードが含まれていました。

だからこれはテキストです。これで、ほとんどのコードが1つ(またはいくつかの)ファイルにある場合は、実際に次のことを試すことができます。

grep -ai '<this text is in my newest code revision>' image.img

私はこれがとても簡単に聞こえることを知っていますが、私は以前同じ状況で私を救ってくれました。一致する行の上下に行を-C x含める(数字で置き換える)には、コマンドに追加する必要があります。x

ファイルが部分的に破損している可能性があります。さまざまなモードをお試しください。多くの単語から始めて、正確に一致する単語を見つけてください。結果がない場合は、少ない単語で試してください。


必須事項もあります...常にバックアップしてください。同じドライブにはありません。バックアップを確認してください。数百ギガバイトではないと思われるテキストを扱っているので、クラウドバックアップ(もちろん暗号化)などを設定することもできます。


もう一つのアドバイス:コードを書き換えるよりも時間を費やさないでください。落ち着くことができることを試して、私のgrep方法が役立つことを確認してください。一日中使用しても結果が出ない場合は、最善の解決策はおそらく最新のバックアップを受け取り、そこで再度作業することです。

おすすめ記事