리눅스 inotifywait

(Inotifywait에서 넘어옴)

1 개요[ | ]

리눅스 inotifywait
/usr/bin/inotifywait
  • inotify-tools 패키지 필요
  • 파일시스템의 변경이 발생할 때까지 대기하는 리눅스 명령어
  • 파일, 폴더 모두 모니터링 가능
  • 변경(rm, mv, touch)뿐만 아니라 단순히 읽기(cat)만 해도 감지됨[1]
  • -e 옵션: 원하는 이벤트만 선별적 감지 (예: -e modify는 변경만 감지)
  • -r 옵션: 하위디렉토리 전체 감지

2 실습 1[ | ]

Console
Copy
[root@zetawiki ~]# echo hello > 1.txt
Console
Copy
[root@zetawiki ~]# inotifywait 1.txt
Setting up watches.
Watches established.
→ 프롬프트 나오지 않고 대기중...
  • 새 SSH 세션으로 접속하여 touch
Console
Copy
[root@zetawiki ~]# cat 1.txt
hello
  • 기존 SSH 세션에서 실행중이던 inotifywait가 감지함
Console
Copy
[root@zetawiki ~]# inotifywait 1.txt
Setting up watches.
Watches established.
1.txt OPEN 
[root@zetawiki ~]#

3 실습 2[ | ]

Console
Copy
[root@zetawiki ~]# mkdir a
[root@zetawiki ~]# inotifywait a
Setting up watches.
Watches established.
  • 새 세션
Console
Copy
[root@zetawiki ~]# ll a
total 0
  • 기존 세션
Console
Copy
[root@zetawiki ~]# inotifywait a
Setting up watches.
Watches established.
a/ OPEN,ISDIR
[root@zetawiki ~]#

4 같이 보기[ | ]

5 참고[ | ]

  1. 읽기만 해도 파일 접근시각은 변경되므로 엄밀한 의미에서는 변경이 있다고 할 수도 있겠다...
  • 리눅스 디렉토리 용량 확인 du
    "현재폴더에 있는 폴더 및 파일 중에서 용량이 큰 것 순으로 10개 보기" 에서 -hs 옵션을 주면 sort가 제대로 되지 않는다고 하셨는데 sort의 -h 옵션을 이용하면 가능합니다. (-h, --human-numeric-sort) 저는 다음과 같이 합니다. du -hs * | so
  • 리눅스 반복 예약작업 cron, crond, crontab
    타사 크론 서비스를 사용하여 자신의 서버에서 호스팅 크론을 사용하여 게다가, 당신은 타사 크론 서비스 (보통이라고 webcron)를 사용할 수 있습니다 : http://EasyCron.com - 크론 작업을 설정하는 crontab을 또는 다른 작업 스케줄러의 필요성을 제거 webcron