rmコマンドはどのようにディスク容量を解放しますか?

rmコマンドはどのようにディスク容量を解放しますか?

rmコマンドがどのように機能するかを理解し、これを取得しようとしています。一つ:

rm コマンドは、インデックスから指定されたファイルのエントリを削除します。ファイルが削除されたため、Linuxはファイルが保存されているブロックを無料で表示し、新しいファイルに使用できるようにします。ディスクに新しいファイルを保存すると、Linuxはインデックスを使用して利用可能なブロックを見つけます。ブロックがインデックスで使用可能とマークされている場合は、含まれている内容に関係なく新しいデータを保存するために使用されます。

技術的な観点からは、いいえ、削除されたファイルは、ファイルが保存されているのと同じ場所に新しいファイルまたはフォルダが保存されるまでディスクに残ります。

言ったように、rm毎回コマンドを使用してより多くの空きディスク容量を確保するにはどうすればよいですか?

答え1

あなたが引用したチュートリアルは、主にこのユーティリティの用途への参照ですshred。 (この記事は特によく書かれていません。)

rmコマンド情報:システムは各ファイルの参照回数を保持します。ファイルの inode へのハードリンクの数と、現在のファイルに対して開いているファイル記述子を持つプロセスの数を知っています。

ファイル内の特定のディレクトリエントリは各有効で使用されますrm。ファイルの inode へのリンクがなくなり、そのファイルの有効なファイル記述子を保持するプロセスがない場合、ファイルシステムドライバはファイルと共に inode を使用します。すべてのデータブロックは利用可能なリストとして返されます。

shredコマンド情報:ファイル・データ・ブロックを使用可能リストに戻しても、そのブロックのデータは破損しません。ディスクをブロックデバイスに読み込んで、データセキュリティリスクを引き起こす可能性がある方法でスキャンできます。

このshredコマンドは、データの回復を防ぐために、ファイル内のすべてのデータブロック(0または任意の数字を含む)を上書きするために使用されます。その後、これらのブロックは使用可能リストに解放されます。shredマンページにはいくつかの弱点が指摘されています。ジャーナリングファイルシステムとSSDデバイスでは正しく機能しません。

関連情報