mvコマンドを使用すると、ハードディスクはどうなりますか?

mvコマンドを使用すると、ハードディスクはどうなりますか?

以下の条件が適用されます。

  1. mv同じハードドライブパーティション内
  2. mv同じハードドライブの別のパーティションに
  3. mv他のデバイス(USB HDDなど)

ファイル全体が移動されたのか、それともポインタの再割り当てなど、非常に小さな変更がありましたか?

答え1

ファイルシステム内の移動(ファイル名の変更とも呼ばれます)がどのように処理されるかは、各ファイルシステムによって異なりますが、ファイルシステムはinodeやファイルの内容を移動せずにディレクトリエントリを更新し、ほぼ一般的に処理します。

ファイルシステム間の移動(同じ物理メディア上にあるかどうか)は、ファイルのコピーとして処理された後に削除されます。実際には、これがmvコマンドが実行するアクションです。明らかに、これは、ターゲットファイルシステムがファイルの新しいコピーを作成する必要があることを意味します。

答え2

man mv説明する:

 As the rename(2) call does not work across file systems, mv uses cp(1) and rm(1) to
 accomplish the move.  The effect is equivalent to:

       rm -f destination_path && \
       cp -pRP source_file destination && \
       rm -rf source_file

関連情報