마지막 수정 날짜를 변경하지 않고 chown/chgrp를 사용할 수 있는 방법이 있습니까?

마지막 수정 날짜를 변경하지 않고 chown/chgrp를 사용할 수 있는 방법이 있습니까?

오래된 하드 드라이브에서 파일을 복구하고 있는데 드라이브의 마지막 수정 날짜를 보존해야 합니다. 업데이트한 이유는 파일의 소유권을 새로운 사용자에게 변경해야 했기 때문입니다.

답변1

소유자가 변경되면 mtime(파일 수정 시간)이 변경되어서는 안 됩니다(atime이나 액세스 시간도 변경되어서는 안 됩니다). 이는 ctime 필드에 반영된 inode 정보의 변경 사항입니다.

시스템에서 chown(2)( chown(1)또는 )가 mtime 또는 atime을 변경했고 mtime 및 atime을 유지하는 데 관심이 있는 경우, 현재 시간을 수집한 다음( 또는 사용 ) 이를 복원 chgrp(1)하는 코드를 작성해야 합니다 ( 또는 사용 ).stat(2)stat(1)utimes(2)touch(1)

AFAIK, ctime 설정을 제어할 수 없습니다. 인덱스 노드가 변경되면 시스템은 변경 시간을 기록하고 변경을 허용하지 않습니다.

관련 정보