![파일 내용이 수정되면 ctime이 변경되는 이유](https://linux55.com/image/71614/%ED%8C%8C%EC%9D%BC%20%EB%82%B4%EC%9A%A9%EC%9D%B4%20%EC%88%98%EC%A0%95%EB%90%98%EB%A9%B4%20ctime%EC%9D%B4%20%EB%B3%80%EA%B2%BD%EB%90%98%EB%8A%94%20%EC%9D%B4%EC%9C%A0.png)
내가 이해한 바로는 파일 메타데이터나 파일 내용이 변경되면 ctime이 변경되고, 파일 내용이 수정되면 mtime이 변경됩니다.
파일 내용이 변경되면 ctime이 업데이트되는 이유를 알고 싶습니다. 이미 mtime 추적 기능이 있지 않습니까?
내 MAC에서
usxxkothan3m1:temp kothan3$ touch foo.txt
usxxkothan3m1:temp kothan3$ stat -x foo.txt
File: "foo.txt"
Size: 0 FileType: Regular File
Mode: (0644/-rw-r--r--) Uid: (276196474/ kothan3) Gid: (720748206/CORP\Domain Users)
Device: 1,4 Inode: 11745569 Links: 1
Access: Mon Aug 24 11:59:07 2015
Modify: Mon Aug 24 11:59:07 2015
Change: Mon Aug 24 11:59:07 2015
usxxkothan3m1:temp kothan3$ echo "write something here" >> foo.txt
usxxkothan3m1:temp kothan3$ stat -x foo.txt
File: "foo.txt"
Size: 21 FileType: Regular File
Mode: (0644/-rw-r--r--) Uid: (276196474/ kothan3) Gid: (720748206/CORP\Domain Users)
Device: 1,4 Inode: 11745569 Links: 1
Access: Mon Aug 24 11:59:24 2015
**Modify: Mon Aug 24 11:59:21 2015**
**Change: Mon Aug 24 11:59:21 2015**
usxxkothan3m1:temp kothan3$ chmod u-w foo.txt
usxxkothan3m1:temp kothan3$ stat -x foo.txt
File: "foo.txt"
Size: 21 FileType: Regular File
Mode: (0444/-r--r--r--) Uid: (276196474/ kothan3) Gid: (720748206/CORP\Domain Users)
Device: 1,4 Inode: 11745569 Links: 1
Access: Mon Aug 24 11:59:24 2015
Modify: Mon Aug 24 11:59:21 2015
**Change: Mon Aug 24 11:59:37 2015**
답변1
ctime
, 또는 상태 변경 시간은 파일 메타데이터가 변경되는 시간을 나타냅니다. 예를 들어 $ ls -ltc
Linux에서는 파일 상태 정보가 마지막 수정 시간에 따라 정렬되어 표시됩니다.
좀 더 자세히 살펴보면 ctime
데이터 블록 및/또는 파일 메타데이터가 변경된 이후 inode가 보고한 시간입니다. 여기에서 파일 메타데이터 변경 사항은 파일 이름, 파일 권한, 파일 속성, SELinux 컨텍스트 및 특정 파일과 관련된 기타 여러 유형의 파일 시스템 메타데이터가 변경된 이후 경과한 시간 등을 나타낼 수 있습니다. ctime
이 필드는 데이터가 청크될 때마다 업데이트 되므로또는mtime
메타데이터는 업데이트될 때마다 변경되고 업데이트됩니다. 그러나 해당 파일에 대한 가장 최근 변경 사항이 파일 이름 변경, chmod
사용자 호출 권한 변경 등과 같은 메타데이터 변경 사항만 포함하는 경우오직 ctime
그리고아니요 mtime
업데이트됩니다.
ctime
변경되었으나 변경되지 않은 조건 mtime
은 파일 메타데이터가 어떤 방식으로든 변경되었지만 파일 자체를 구성하는 기본 데이터는 변경되지 않았음을 나타냅니다. 나는 이것이 자동화된 데이터 백업, 컴퓨터 포렌식 등에 유용할 것이라고 생각합니다.