리눅스를 사용시.. 특히 find 옵션을 줄때
atime
mtime
ctime
등 의 옵션을 주는경우가 있다.
혹시 이 내용의 구분이 어렵다면 다음과 같이 생각해 보자.
1. 파일정보
명령어 : stat
stat 명령을 이용해서 파일을 보자.
결과가 대략 이렇게 나오는데
File: `hw.txt'
Size: 22975 Blocks: 48 IO Block: 4096 일반 파일
Device: 802h/2050d Inode: 786492 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2014-10-20 10:55:08.477882048 +0900
Modify: 2014-10-01 13:19:06.799179062 +0900
Change: 2014-10-01 13:19:06.799179062 +0900
Birth: -
위 정보중
Access 에 기록된 시간이 바로 atime
Modify 에 기록된 시간이 바로 mtime
Change 에 기록된 시간이 바로 ctime
이 되겠다...
위 파일을 가지고 예를들어 설명해 보도록 하겠다.
2. atime
말그대로 파일에 접근한 시간을 의미한다.
편집기로 열거나, 아니면 파일의 내용을 확인하는 형태의 다른 명령어(grep 등.. )가 실행될 경우 변경된다.
# stat hw.txt
File: `hw.txt'
Size: 22975 Blocks: 48 IO Block: 4096 일반 파일
Device: 802h/2050d Inode: 786492 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2014-11-26 17:43:18.723701989 +0900
Modify: 2014-10-01 13:19:06.799179062 +0900
Change: 2014-10-01 13:19:06.799179062 +0900
Birth: -
예제처럼 grep 을 이용해서 hw.txt 파일에 접근후 stat 으로 상태 확인을 해보면
Access 항목 즉, atime 이 변경되었음을 알 수 있다.
3. ctime
파일이 수정된 시간인데... 그중에서도 파일의 속성이 수정된 시간을 의미한다.
- 퍼미션
- 소유권
등의 정보 수정이 이루어질때 변경된다.
# stat hw.txt
File: `hw.txt'
Size: 22978 Blocks: 48 IO Block: 4096 일반 파일
Device: 802h/2050d Inode: 786492 Links: 1
Access: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2014-11-26 17:43:18.723701989 +0900
Modify: 2014-10-01 13:19:06.799179062 +0900
Change: 2014-11-26 17:49:54.541238037 +0900
Birth: -
4. mtime
파일이 수정된 시간인데... 그중에서도 파일의 내용이 수정된 시간을 의미한다.
파일내용이 수정/추가/삭제 등의 작업이 이루어질때 변경된다.
# stat hw.txt
File: `hw.txt'
Size: 22994 Blocks: 48 IO Block: 4096 일반 파일
Device: 802h/2050d Inode: 786247 Links: 1
Access: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2014-11-26 17:53:48.765890656 +0900
Modify: 2014-11-26 17:55:33.267827347 +0900
Change: 2014-11-26 17:55:33.267827347 +0900
Birth: -
설명에는 파일내용이 수정될때 mtime이 변경된다고 했는데..
파일을 수정후에 stat을 통한 결과를 보자 ctime 이 같은 시간으로 변경된것을 알 수 있다.
이것은 파일 내용이 수정될때.. 내용뿐만 아니라 파일 사이즈가 같이 수정되었기 때문이고
파일 사이즈는 파일의 속성이기 때문에 같이 변경된다고 이해하면 되겠다...
이상~
댓글 0
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
34 | PHP 지원기간 안내 (PHP Supported Versions) | 위대한유저 | 2015.04.03 | 223 |
33 | 윈도우폰에서 앱 설치가 되지 않을때 | 위대한유저 | 2015.03.28 | 387 |
32 | 삼바 사용시 smb_pwd_check_ntlmv1: incorrect password length 에러 대처 | 위대한유저 | 2015.03.18 | 607 |
31 | CVE-2015-0235 GHOST BUG | 위대한유저 | 2015.02.05 | 721 |
30 | cacti-0.8.8c 버전에서의 주의점 | 위대한유저 | 2015.02.03 | 894 |
29 | yum update error: "error was [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404"" | 위대한유저 | 2015.01.30 | 1672 |
28 | xfce4 on centos7(rhel7) | 위대한유저 | 2015.01.28 | 2942 |
27 | 리눅스 virtualbox에서 게스트os에 usb드라이브 마운트 안된다면... | 위대한유저 | 2015.01.20 | 607 |
26 | 윈도우 원격데스크탑 포트변경하기 | 위대한유저 | 2015.01.10 | 538 |
25 | IIS의 ASP페이지에서 데이터베이스 연결을 만드는 방법 | 위대한유저 | 2014.12.14 | 550 |
» | atime, mtime, ctime 의 차이점 | 위대한유저 | 2014.11.27 | 1190 |
23 | hdparm 을 이용한 디스크 초기화 | 위대한유저 | 2014.11.14 | 1267 |
22 | IE 확대/축소 기능끄기 | 위대한유저 | 2014.07.01 | 2519 |
21 | 넷북 환경에서 윈도우 8.1 업데이트 하기 | 위대한유저 | 2014.05.14 | 3624 |
20 | centos 기반에서 tftp 서비스 활성화하기 | 위대한유저 | 2014.03.21 | 16714 |