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

관련 정보