sun's longitude:240 54 31.38 
· 자유게시판 · 묻고답하기 · 알파문서 · RPMS list
· 사용자문서 · 팁/FAQ모음 · 리눅스Links · 자료실
· 서버정보 · 운영자 · Books/FAQ · FreeBSD
/board/read.php:소스보기  
알파문서
자주 잊어먹거나, 메모해 둘 필요성이 있는 팁이나 문서, 기타 등등
[*** 쓰기 금지단어 패턴 ***]
글 본문 중간에 업로드할 이미지를 추가하는 방법 : @@이미지이름@@
ex) @@foo.gif@@
13 번 글: [SE] watch로 간단한 시스템 모니터링
글쓴이: 산이 [홈페이지] 글쓴날: 2003년 01월 09일 01:46:34 목(새벽) 조회: 5913
[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=] [--version] 
  -d, --differences[=cumulative]        highlight changes between updates
                (cumulative means highlighting is cumulative)
  -h, --help                            print a summary of the options
  -n, --interval=              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


 
이전글 : [사용자 쉘권한] 서비스별 설정
다음글 : Re: 문서화 완료  
 from 61.254.75.40
JS(Redhands)Board 0.4 +@

|글쓰기| |답장쓰기| |수정|
|이전글| |다음글| |목록보기|
인쇄용 

apache lighttpd linuxchannel.net 
Copyright 1997-2024. linuxchannel.net. All rights reserved.

Page loading: 0.01(server) + (network) + (browser) seconds