UNIX ライクなシステムでファイルを rm すると、より深いレベルで何が起こるのか、特に、削除されたファイルを復元する方法に関連して、私は興味があります。
rm がかなり細かいレベルでどのように機能するかを誰か説明できますか?
UNIX ライクなシステムでファイルを rm すると、より深いレベルで何が起こるのか、特に、削除されたファイルを復元する方法に関連して、私は興味があります。
rm がかなり細かいレベルでどのように機能するかを誰か説明できますか?
rm は、unlink システム コールを呼び出します。unlink() はディレクトリ エントリを削除し、ファイルの inode を空き (再利用可能) としてマークし、ディスク ドライバはサポート ファイルシステム データを (しばらくしてから) ディスクから削除します。
古いシステムの場合: ディスク セクター上の実際の物理データはまだ存在する可能性がありますが、アクセスすることはできません。古いデータの永続性は保証されていません。
Windows 開発者が削除取り消しのアイデアを思いついたのだと思います。これには、削除されたファイルに対する特別な処理が必要です。古い UNIX/Linux ファイル システムとドライバーのほとんどは、削除の取り消し操作をサポートしていません。ext3 および ext4 ファイルシステムはそうです。最新の Linux は、ext3 および ext4 の extundelete コマンドをサポートしています。このコマンドは、一時メタデータ ストアに送信されたファイルの古いメタデータをすべて再構築します。extundelete 機能により、古い UNIX システムでは簡単にサポートできなかったオーバーヘッドが追加されます。また、追加のディスク オーバーヘッドもあります。