Linux의 "atime"이 NTFS 기반 Windows의 "생성 날짜"를 덮어쓰는 것을 방지하는 방법은 무엇입니까?

Linux의 "atime"이 NTFS 기반 Windows의 "생성 날짜"를 덮어쓰는 것을 방지하는 방법은 무엇입니까?

Linux에서 외장 하드 드라이브의 NTFS 파일을 변경하여 mtime, 및 (명령을 사용하여 읽을 수 있으며 atimeNTFS 의 파일에 대한 액세스 권한은 Linux에서 변경할 수 없으므로 - I 생각하세요), Windows 7 시스템에서 동일한 외부 하드 드라이브를 연결하면 (예상대로) 이 표시되지만 .ctimestatctime = mtimeDate modified = mtimeDate created = atime

NTFS 타임스탬프와 연결된 자리 표시자를 atime얻는 방법은 무엇입니까 ? CTime이 동작을 방지할 수 있는 방법이 있습니까? 예를 들어 noatimeNTFS 볼륨에서 이 옵션을 사용하는 것이 올바른 솔루션입니까? 내 목표는 너무 많은 타임스탬프를 혼합하지 않고 동일한 외장 하드 드라이브에서 Windows와 Linux를 모두 작업할 수 있는 것입니다.

편집하다

문제를 재조사한 결과 문제가 존재하지 않는 것으로 확인되었습니다. 이 질문을 받았을 때 나는 혼란스러웠나 보다. 이 질문은 몇 가지 의견과 답변을 생성했기 때문에 계속 남깁니다.

답변1

리뷰로 쓰기에는 너무 방대하지만 도움이 될 거라고 생각했습니다.

이 동작을 방지하려면 다음을 수행할 수 있습니다.

 $current_ctime=$(getfattr -n system.ntfs_crtime_be -e hex yourfile | grep system.ntfs_crtime_be | cut -d= -f2) 

그런 다음 변경 후 current_ctime을 복원하려면 다음 명령을 사용하십시오.

setfattr -n system.ntfs_crtime_be -v $current_ctime yourfile 

~을 위한여러 파일예를 들어 for 루프를 사용하여 모든 ctime을 저장하고 각 파일에 대해 동일한 방식으로 복원할 수 있습니다.

예쁘지는 않지만 효과적입니다.

관련 정보