>> Edit article
이름
제목
패스워드
[SE] watch로 간단한 시스템 모니터링 *추가) - 2003.01.09, 중요한 netstat 관한 내용이 빠져있어서 추가합니다. 안녕하세요? ... 이곳 팁 게시판에 `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' .... (생략) 이번에는 netstat 명령어를 사용해서 실시간으로 열려있는 포트(tcp/udp)와 해당 프로그램을 모니터링해 봅시다. (시스템에 따라서 root 권한 필요함) # watch -d -n 3 'netstat -atnup' .... (생략) 마지막으로 앞의 여러가지 명령어를 조합해 봅시다. - 현재 접속한 모든 사용자 출력 - 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
Copyleft
1999-2026 by
JSBoard Open Project
Theme Designed by
IDOO
All right reserved