コマンドラインからMacから削除されたファイルを回復する

コマンドラインからMacから削除されたファイルを回復する

次のコマンドを実行して、誤ってファイルを削除しました。

rm -rf ./Desktop/myScript.sh

コマンドで一時的にファイルを削除するため、ファイルを回復できるようですrm。 Mac OSXから削除されたファイルを回復する方法は?

ベストアンサー1

rmMacOSは「こんにちは」を意味するUnixオペレーティングシステムです。 GUIインターフェースを使用すると、ファイルをごみ箱に移動できますが(後で復元可能です)、実際にはそうではありません。バックアップがある場合(たとえば、Time Machineが実行されている場合)、保存されます。

言う

厳密に言えば、(@ire_and_cursesが指摘したように)aはrmファイルのディレクトリエントリを削除します。去るディスクブロックが使用され、影響を受けません。ファイルを含むファイルシステムを停止できる場合は、高度な方法を使用してブロックの内容を再発見できます。損失を回復するために購入できる回復ツールもあります。主な問題は、ファイルが表すディスクブロックを他のものを再利用できないことです。

srmMacOSには、ファイルを編集する前に上書きしてunlink回復できないようにする安全な削除コマンド()もあります。私がこのunlink用語を使用する理由は、これがrmシェルコマンドに関連付けられている低レベルのシステムコールだからです。これは以下の議論の次の部分のためのステップを設定します。

サイドノート

[急いで付け加えると、ディスクを何度も上書きしても、以前に書いた内容を数十回以上読むことができる方法があります。ディスクを適切に消毒するには、酸性溶液、大きなハンマー、グラインダーが必要です。 ]

unlinkファイルを削除すると、ファイル内のinodeリンクの数が減ります。値が0に達すると、ファイルはファイルシステムディレクトリから削除され、そのディスクブロックは再利用のために解放されます。この問題は以下でのみ発生します。いいえプロセスがファイルを開きました。ファイルシステムが単にディスクブロック(例えばdu)を追加するだけでは説明できない大量のスペースを占めるという事実を発見した場合、管理者はしばしば混乱します。最も一般的な原因は、開いているファイルが削除され、そのディレクトリに表示されなくなることです。その理由は、ファイルを使用する最後のプロセスが終了するまでディスクブロックが引き続き使用されるためです。

ファイルを開いてunlinkすぐに読むことは、実際に安全な一時ファイルを作成する一般的な方法です。lsofリンク数(NLINK)がゼロのファイルを見つけると、これらのツールは目に見えないファイルを公開する可能性があります。

UnixとLinux(MacOSはUnixのブランドです)では、rm「do-it」というUnix哲学に従い、可能であれば目立たないようにしてください。つまり、ファイルを削除する権限がある場合(つまり、ディレクトリで書き込みが許可されている場合)、要求するrm操作を実行してください。rm='rm -i'操作を実行する前に確認メッセージを表示するシェルエイリアスを作成できます。必要に応じて-fオーバーライド機能付きのスイッチを使用してください。つまり、次の項目を削除するときにrmリストからファイルをスキップすることを選択できます。rmglobrm *.log

おすすめ記事