rm -rf ~" コマンドを元に戻すには?
私は’~‘という名前のいらないフォルダを持っていたので、コマンドラインから
rm -rf ~
と入力し、誤ってホームフォルダを削除してしまいました(~が/home/usernameに解決されたので)。何か戻る方法はありますか、それとも基本的にはアカウントを一から作り直す必要がありますか?
私は’~‘という名前のいらないフォルダを持っていたので、コマンドラインから
rm -rf ~
と入力し、誤ってホームフォルダを削除してしまいました(~が/home/usernameに解決されたので)。何か戻る方法はありますか、それとも基本的にはアカウントを一から作り直す必要がありますか?
一般的には簡単に戻る方法はありません。
毎日のバックアップからリストアすればいい。
他の人( @RiMMER , @Adam , @James T など)は、ほとんどのファイルシステムでは、データが実際にゼロアウトされるのではなく、ファイルテーブルから削除されるだけなので、ほとんどまたはすべてのデータを(おそらくファイル名なしで)復元することが可能であると述べています。これはLinuxだけではなく、WindowsやMacでも同じことが言えます。
しかし、最も重要なこと、**TURN OFF YOUR COMPUTER. 今すぐに。
多くのプログラム(今使っているインターネットブラウザを含む)は、データをハードドライブにキャッシュします。これらはどちらもハードドライブの空きセクタに書き込まれ、貴重なデータを上書きしてしまう可能性があります。
このように、コンピュータの電源を切り、ハードドライブを取り出し、別のコンピュータに入れてください。ハードドライブを読み取り専用としてマウントし、別のハードドライブにファイルを復元します。あなたが興味のあることができるすべてのものを回復したとき - そして only then - 元のドライブにファイルを書き戻します。
私は、すべてのlinuxユーザーが一度は、細部に注意を払い、注意を払うことと同様に、バックアップの重要性を実際に学ぶ前に、この痛切な教訓を直に学ばなければならないと考えています。
例えば、奇妙な見た目のファイルを削除している場合、まずその奇妙なファイルに対して、副作用がなく、データに変更を加えないコマンドを実行することができます。例えば、フォルダを削除しようとする前に
cd ~
を実行した場合、ディレクトリが ~
フォルダではなく、ホームフォルダに変更されることがわかったはずです。cd
フォルダに正しく~
するために必要な真のコマンドを知るために十分なトラブルシューティングの手順を踏んだら、上矢印キーを押して履歴から最後のコマンドを取り出し、cd
をrm
に変更してからフォルダを削除しようとすることができます。
恒久的な_行為を行う前に、このような手順を踏むことをお勧めします。永久的ではないし、確実ではありませんが、副作用のあるアクションを実行する際にこの程度の注意を払えば、おっとした瞬間を防ぐことができる可能性が高くなります。
十分な大きさの外付けドライブを持っている場合は、他にも安全なオプションがあるかもしれません。空き領域を含めてホームパーティション全体を保存するのに十分な容量が必要です。
CD から起動し、ホームドライブをマウントしない。外付けドライブをマウントします。ホームドライブのパーティションを外付けドライブのファイルにddします。ファイルシステムによっては、いろいろなことを試すことができますが、その中には破壊的になる可能性のあるものもあります。
これのおかげで、Reiser4 のベータ版で、読み取り専用でマウントしても何をするのかわからなかったときに助かったことがあります。その時にどこかでジャーナル書き込みが可能だと書いてありました。
これは、瀕死のドライブからデータを保存するための良いテクニックでもあります。
リサイクルされていないインノードを検査してファイルを復元するテクニックがあります。削除後にファイルシステムに書き込んだデータが多ければ多いほど、データ復旧の可能性は低くなります。誤ってデータを削除してしまった場合の復旧方法としては、バックアップから復元するのが最善の方法です。
データのことはお気の毒です。他の人はデータの問題の対処法についてコメントしていますが、ここでは次にフォルダ名が ~
.
1.そのフォルダを作成した人を見つけて、二度とやらないようにしてください。
2. -rf
や、rm で削除を行うための強力な引数を使わない。その代わりに、ゆっくりと時間をかけて、何が起こっているのかがわかるようにしてください。シェルでチルダをエスケープすることで、ホームディレクトリに展開せずにチルダを入力することができます。理論的には rm -rI \~
と入力することができますが、もう一歩踏み込んでみましょう。
1.最初に、そのフォルダに入るためにcd \~
を使用して、多分あなたがそこに着いたことを確認するためにpwd
を使用します。その中にいる間に内容を削除します。ここでも注意が必要ですが、rf -rI *
を使ってフォルダをクリーンアウトし、.*
も必要であれば取得してください。
2. cd ..
で上に移動して、rmdir \~
でディレクトリを削除します。
alias rm="rm -i"
Bash シェルを使っていると仮定します (これを .bashrc ファイルに入れておくと、新しいシェルを開いたときにも持続します)。
これは削除したいものを確認するように rm に求めてくるはずです。これは特に -rf を実行している時には良いことですが、プロンプトでは ‘~’ をホームディレクトリへのフルパスまで展開します。
$ rm -rf ~
rm: examine files in directory /nas/users/u12345/unix (yes/no)? n
これは技術的には質問に対する答えではありませんが、将来的にこのような問題を回避するのに役立つかもしれません。 私の経験では、これは真実とは程遠いものです。実際には、エイリアスの効果は、"rm -rf “を使わないようにすることです - それは、答えたくない多くのプロンプトが出ることを知っているからです - そして、プロンプトが出ない "rm -rf "を得るためには、意図的に/bin/rm (または何でもいい)としてrmコマンドを参照する必要があります。これは、一般的に "rm” コマンドをより意識的かつ意図的に使用することにつながります - 自分のサーバと、たまたまログインしている他のサーバの両方で、常に “rm または /bin/rm” という精神的な選択で rm を使用する必要があるからです。そして、誰もが rm を使う前に考えるような世界は、本当に安全な世界になるでしょう!
リカバリーツール - コマンドライン :
*リカバリーツール - グイ . *
*Infos . *
私の個人的な経験では、"UFS Explorer “と photorec
(1) = オープンソースではない、無料ではない
(2) = オープンソースではない、無料ではない
(3) = オープンソースで無料である
(4) = ntfs サポートがある
(5) = ディレクトリ構造機能がある