감탄하고 갑니다.
SE의 길은 멀군요... ^^
: [SE] watch로 간단한 시스템 모니터링
:
:
: 안녕하세요?
: ...
:
: 이곳 팁 게시판에 `watch`에 관한 팁이 없군요.
:
: watch - execute a program periodically, showing output fullscreen
: (주기적으로 실행한 프로그램 결과를 전체 화면에 출력함)
:
: [확인]
: $ which watch
: /usr/bin/watch
: $ rpm -qf `which watch`
: procps-2.0.7-3 <-- 제 시스템은 좀 오래되었군요.T.T
:
:
: [사용법]
: $ watch --help
: Usage: watch [-dhnv] [--differences[=cumulative]]
: [--help] [--interval=<n>] [--version] <command>
: -d, --differences[=cumulative] highlight changes between
: updates
: (cumulative means highlighting is cumulative)
: -h, --help print a summary of the options
: -n, --interval=<seconds> seconds to wait between updates
: -v, --version print the version number
: (번역은 안해도 되겠죠..^.^)
: (기본적으로 2초 간격으로 화면 갱신합니다.)
:
: *기본 사용예)
: $ watch [-d] [-n seconds] 'command...'
:
:
: 가장 간단한 예부터 봅시다.
:
: 예를들어, 실시간(1초간격)으로 바뀌는 시스템의 UPTIME 값을 화면에 계속
: 출력해 봅시다.
:
: $ watch -d -n 1 'cat /proc/uptime'
: Every 1s: cat /proc/uptime Sat Jan 4 14:41:18 2003
:
: 11554.91 11516.56
:
: 종료는 [Ctrl + C]입니다.
: (눈이 아프다면, -d 옵션을 끄는것이 좋겠군요.)
:
: /proc/uptime 외에,
: /proc/loadavg (시스템 부하량 모니터링, `top`으로 가능)
: /proc/meminfo (메모리 정보)
: ...(기타)
:
: 이번에는 (`top`처럼) uptime과 loadavg를 한꺼번에 출력해 봅시다.
:
: (2초간격으로)
: $ watch 'cat /proc/{loadavg,uptime}'
: ....
: (생략)
:
:
: 이번에는 `tail -f`와 같이 실시간으로 변화는 파일의 내용을
: 확인해 봅시다.
:
: (예:/var/log/messages, root 권한 필요)
: $ watch -n 1 'tail -n 20 /var/log/messages'
: ....
: (생략)
:
:
: 이번에는 실시간으로 사용자를 확인해 봅시다.
: (명령어: w, 2초 간격)
: $ watch -d w
: ....
: (생략)
:
:
: 이왕 시작했으니 시스템 프로세스도 실시간으로 확인해 봅시다.
:
: (아파치 프로세스만 보기)
: $ watch -d -n 1 'ps -ef | grep httpd | grep -v grep'
: ....
: (생략)
:
:
: 마지막으로 앞의 여러가지 명령어를 조합해 봅시다.
:
: - 현재 접속한 모든 사용자 출력
: - httpd 프로세스 최근 20개 출력
: - /var/log/messages 최근 10 줄 출력
: - 추기 2초 간격
: - (root 권한이 필요하겠군요)
:
: # watch -d 'w; echo; ps -ef | grep httpd | grep -v grep | tail -n 20;
: echo; tail -n 10 /var/log/messages'
: (명령어들을 ';'로 구분함, echo는 공백줄을 출력하기 위해서)
:
:
: (나머지는 스스로 응용해 보세요..)
:
:
: EOF--신참내기는 알아야 할 것도 많더라...