서버 상태 값 주기적으로 메일로 발송하기
서버가 많을 경우, 당연 별도 솔루션이나 장비 등을 통해 모니터링을 하는 것이 맞지만 그렇지 않을 경우
서버당 들어가서 부하량이나 기타 등등의 값을 수작업하여 조회해야 합니다.
이러한 불편함을 아주 간단히 ()|mail 을 사용해서 메일을 발송로 발송토록 쉘로 만들어 놓았습니다.
도움이 되려나 모르겠지만..
저는 이렇게 쓰고 있습니다... 궁해서요..^^
혹, 필요하신분들 있으시면 가져다가, 쓰세요.
화일명으로 저장후 실행권한 주시고, /etc/cron.hour 에 넣어 주세요.
하루에 한번씩 돌리면 좋을듯 하네요.
조금이라도 도움이 되었으면 하는 바램으로....
-------------------------------------
1. 스크립트
-------------------------------------
#!/bin/sh
# 작성일 : 2005/01/27
# http://www.rootman.co.kr
# 제목 : 서버 서비스 상태 표시기
# 별도 수정 사항 : 수신처 메일
# --------------------------------------------------
# 소스 라이브러리 함수 참조
source /etc/sysconfig/network
source /etc/sysconfig/network-scripts/ifcfg-eth0
# 수신처 메일
Email="coolho at lycos.co.kr";
# 네트워크 활성화 체킹
if [ ${NETWORKING} = "no" ]
then
exit 0
fi
# 문법
(
echo "---------------------------------------------------------------------------" && \
echo "1. uptime 값" && \
echo "---------------------------------------------------------------------------" && \
uptime && echo -e "\n" && \
echo "---------------------------------------------------------------------------" && \
echo "2. w 값" && \
echo "---------------------------------------------------------------------------" && \
w && echo -e "\n" && \
echo "---------------------------------------------------------------------------" && \
echo "3. 메모리 값" && \
echo "---------------------------------------------------------------------------" && \
free -m && echo -e "\n" && \
echo "---------------------------------------------------------------------------" && \
echo "4. 열려진 포트 값 조회" && \
echo "---------------------------------------------------------------------------" && \
nmap -p 1-1024 localhost|grep -i "open" && echo -e "\n" && \
echo "---------------------------------------------------------------------------" && \
echo "5. 하드 디스크 사용량 조회" && \
echo "---------------------------------------------------------------------------" && \
df -h && echo -e "\n" && \
echo "---------------------------------------------------------------------------" && \
echo "6. pstree 값" && \
echo "---------------------------------------------------------------------------" && \
pstree && echo -e "\n" ) \
| mail -s "[${IPADDR}] 서비스 상태 표시기" ${Email}
echo "done +";
exit 0;
-------------------------------------
2. 결과 값
-------------------------------------
---------------------------------------------------------------------------
1. uptime 값
---------------------------------------------------------------------------
4:34pm up 9 days, 16:14, 2 users, load average: 0.36, 0.35, 0.48
---------------------------------------------------------------------------
2. w 값
---------------------------------------------------------------------------
4:34pm up 9 days, 16:14, 2 users, load average: 0.36, 0.35, 0.48
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/1 111.111.111.111 4:24pm 9:32 0.04s 0.04s -bash
root pts/2 111.111.111.111 2:07pm 1.00s 0.08s 0.01s /bin/sh ./map.s
---------------------------------------------------------------------------
3. 메모리 값
---------------------------------------------------------------------------
total used free shared buffers cached
Mem: 502 496 6 0 15 205
-/+ buffers/cache: 275 226
Swap: 2047 0 2047
---------------------------------------------------------------------------
4. 열려진 포트 값 조회
---------------------------------------------------------------------------
21/tcp open ftp
22/tcp open ssh
25/tcp open smtp
53/tcp open domain
80/tcp open http
110/tcp open pop-3
143/tcp open imap2
873/tcp open rsync
---------------------------------------------------------------------------
5. 하드 디스크 사용량 조회
---------------------------------------------------------------------------
Filesystem Size Used Avail Use% Mounted on
/dev/sda6 4.6G 2.8G 1.6G 63% /
/dev/sda1 144M 13M 124M 10% /boot
/dev/sda5 24G 50M 22G 1% /home
none 251M 0 251M 0% /dev/shm
/dev/sda3 2.9G 1.1G 1.6G 39% /usr/local
/dev/sdb1 15G 4.2G 10G 29% /home2
/dev/sdb2 18G 13G 5.1G 71% /home3
---------------------------------------------------------------------------
6. pstree 값
---------------------------------------------------------------------------
init-+-ahc_dv_0
|-ahc_dv_1
|-bdflush
|-clamd
|-crond
|-2*[java]
|-keventd
|-khubd
|-6*[kjournald]
|-klogd
|-ksoftirqd_CPU0
|-kswapd
|-kupdated
|-libhttpd.ep---25*[libhttpd.ep]
|-6*[mingetty]
|-named---named---3*[named]
|-proftpd---proftpd
|-safe_mysqld---mysqld---mysqld---3*[mysqld]
|-scsi_eh_0
|-scsi_eh_1
|-sendmail
|-sshd-+-sshd---bash---map.sh-+-mail
| | `-map.sh---pstree
| `-sshd---bash
|-syslogd
`-xinetd---rsync<div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 17:32:05 Linux에서 이동 됨]</div>
서버당 들어가서 부하량이나 기타 등등의 값을 수작업하여 조회해야 합니다.
이러한 불편함을 아주 간단히 ()|mail 을 사용해서 메일을 발송로 발송토록 쉘로 만들어 놓았습니다.
도움이 되려나 모르겠지만..
저는 이렇게 쓰고 있습니다... 궁해서요..^^
혹, 필요하신분들 있으시면 가져다가, 쓰세요.
화일명으로 저장후 실행권한 주시고, /etc/cron.hour 에 넣어 주세요.
하루에 한번씩 돌리면 좋을듯 하네요.
조금이라도 도움이 되었으면 하는 바램으로....
-------------------------------------
1. 스크립트
-------------------------------------
#!/bin/sh
# 작성일 : 2005/01/27
# http://www.rootman.co.kr
# 제목 : 서버 서비스 상태 표시기
# 별도 수정 사항 : 수신처 메일
# --------------------------------------------------
# 소스 라이브러리 함수 참조
source /etc/sysconfig/network
source /etc/sysconfig/network-scripts/ifcfg-eth0
# 수신처 메일
Email="coolho at lycos.co.kr";
# 네트워크 활성화 체킹
if [ ${NETWORKING} = "no" ]
then
exit 0
fi
# 문법
(
echo "---------------------------------------------------------------------------" && \
echo "1. uptime 값" && \
echo "---------------------------------------------------------------------------" && \
uptime && echo -e "\n" && \
echo "---------------------------------------------------------------------------" && \
echo "2. w 값" && \
echo "---------------------------------------------------------------------------" && \
w && echo -e "\n" && \
echo "---------------------------------------------------------------------------" && \
echo "3. 메모리 값" && \
echo "---------------------------------------------------------------------------" && \
free -m && echo -e "\n" && \
echo "---------------------------------------------------------------------------" && \
echo "4. 열려진 포트 값 조회" && \
echo "---------------------------------------------------------------------------" && \
nmap -p 1-1024 localhost|grep -i "open" && echo -e "\n" && \
echo "---------------------------------------------------------------------------" && \
echo "5. 하드 디스크 사용량 조회" && \
echo "---------------------------------------------------------------------------" && \
df -h && echo -e "\n" && \
echo "---------------------------------------------------------------------------" && \
echo "6. pstree 값" && \
echo "---------------------------------------------------------------------------" && \
pstree && echo -e "\n" ) \
| mail -s "[${IPADDR}] 서비스 상태 표시기" ${Email}
echo "done +";
exit 0;
-------------------------------------
2. 결과 값
-------------------------------------
---------------------------------------------------------------------------
1. uptime 값
---------------------------------------------------------------------------
4:34pm up 9 days, 16:14, 2 users, load average: 0.36, 0.35, 0.48
---------------------------------------------------------------------------
2. w 값
---------------------------------------------------------------------------
4:34pm up 9 days, 16:14, 2 users, load average: 0.36, 0.35, 0.48
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/1 111.111.111.111 4:24pm 9:32 0.04s 0.04s -bash
root pts/2 111.111.111.111 2:07pm 1.00s 0.08s 0.01s /bin/sh ./map.s
---------------------------------------------------------------------------
3. 메모리 값
---------------------------------------------------------------------------
total used free shared buffers cached
Mem: 502 496 6 0 15 205
-/+ buffers/cache: 275 226
Swap: 2047 0 2047
---------------------------------------------------------------------------
4. 열려진 포트 값 조회
---------------------------------------------------------------------------
21/tcp open ftp
22/tcp open ssh
25/tcp open smtp
53/tcp open domain
80/tcp open http
110/tcp open pop-3
143/tcp open imap2
873/tcp open rsync
---------------------------------------------------------------------------
5. 하드 디스크 사용량 조회
---------------------------------------------------------------------------
Filesystem Size Used Avail Use% Mounted on
/dev/sda6 4.6G 2.8G 1.6G 63% /
/dev/sda1 144M 13M 124M 10% /boot
/dev/sda5 24G 50M 22G 1% /home
none 251M 0 251M 0% /dev/shm
/dev/sda3 2.9G 1.1G 1.6G 39% /usr/local
/dev/sdb1 15G 4.2G 10G 29% /home2
/dev/sdb2 18G 13G 5.1G 71% /home3
---------------------------------------------------------------------------
6. pstree 값
---------------------------------------------------------------------------
init-+-ahc_dv_0
|-ahc_dv_1
|-bdflush
|-clamd
|-crond
|-2*[java]
|-keventd
|-khubd
|-6*[kjournald]
|-klogd
|-ksoftirqd_CPU0
|-kswapd
|-kupdated
|-libhttpd.ep---25*[libhttpd.ep]
|-6*[mingetty]
|-named---named---3*[named]
|-proftpd---proftpd
|-safe_mysqld---mysqld---mysqld---3*[mysqld]
|-scsi_eh_0
|-scsi_eh_1
|-sendmail
|-sshd-+-sshd---bash---map.sh-+-mail
| | `-map.sh---pstree
| `-sshd---bash
|-syslogd
`-xinetd---rsync<div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 17:32:05 Linux에서 이동 됨]</div>
댓글 1개
WAYKIKI
19년 전
logwatch 보다 가벼우면서 보기도 좋네요
게시글 목록
| 번호 | 제목 |
|---|---|
| 12537 | |
| 29323 |
HTML
초보자를 위한 포토샵 강좌 47
|
| 12536 |
JavaScript
초보자를 위한 포토샵 강좌 46
|
| 12535 | |
| 12534 | |
| 12533 | |
| 29322 |
HTML
초보자를 위한 포토샵 강좌 42
|
| 12532 | |
| 12531 | |
| 12530 | |
| 29321 |
HTML
초보자를 위한 포토샵 강좌 38
|
| 12529 |
JavaScript
초보자를 위한 포토샵 강좌 37
|
| 12528 | |
| 12527 | |
| 12526 | |
| 29320 |
HTML
초보자를 위한 포토샵 강좌 33
|
| 12525 |
JavaScript
초보자를 위한 포토샵 강좌 32
|
| 12524 | |
| 12523 | |
| 29319 |
HTML
초보자를 위한 포토샵 강좌 29
|
| 12522 |
JavaScript
초보자를 위한 포토샵 강좌 28
|
| 12521 | |
| 12520 | |
| 12519 | |
| 29318 |
HTML
초보자를 위한 포토샵 강좌 24
|
| 12518 |
JavaScript
초보자를 위한 포토샵 강좌 23
|
| 12517 | |
| 12516 | |
| 29315 |
HTML
레이어 달력...
2
|
| 25032 |
계약서
웹디자인 재택근무계약서
3
|
| 25030 | |
| 25028 |
계약서
매매계약서
1
|
| 25027 | |
| 25026 | |
| 25024 | |
| 25022 | |
| 80 | |
| 29314 |
HTML
초보자를 위한 포토샵 강좌 20
|
| 12515 |
JavaScript
초보자를 위한 포토샵 강좌 19
|
| 12514 | |
| 12513 | |
| 12512 | |
| 29313 |
HTML
초보자를 위한 포토샵 강좌 15
|
| 12511 |
JavaScript
초보자를 위한 포토샵 강좌 14
|
| 12510 | |
| 12509 | |
| 12508 | |
| 12506 | |
| 25021 |
계약서
인터넷업무제휴계약서
|
| 25019 |
계약서
저작권 양도계약서
1
|
| 25017 |
계약서
업무계약서
1
|
| 78 | |
| 12505 | |
| 29311 |
HTML
초보자를 위한 포토샵 강좌 8
1
|
| 12504 |
JavaScript
초보자를 위한 포토샵 강좌 7
|
| 12503 | |
| 12502 | |
| 12501 | |
| 29310 |
HTML
초보자를 위한 포토샵 강좌 3
|
| 12500 |
JavaScript
초보자를 위한 포토샵 강좌 2
|
| 12499 | |
| 12496 |
기타
iconv 활용하기
2
|
| 75 | |
| 12495 |
JavaScript
RED5 Documentation PDF
|
| 12491 |
MySQL
모바일 게시판 ANYBBS PHP 버전
3
|
| 12489 | |
| 73 | |
| 12488 |
기타
부드러운 움직임 2
|
| 12487 |
기타
부드러운 움직임
|
| 71 | |
| 12486 | |
| 12479 |
JavaScript
[펌] 웹방화벽 mod_security 다운로드 및 설정
6
|
| 29308 | |
| 62 | |
| 12476 |
기타
apache 재시작
2
|
| 12475 |
MySQL
윈도우 Mysql 시동 & 중지 명령어
|
| 12474 |
MySQL
mysql 기본 사용법
|
| 12471 |
MySQL
mysql 기본 사용법
2
|
| 12470 |
MySQL
mysql 버전확인
|
| 12467 | |
| 12465 | |
| 12463 |
MySQL
mysql5 euckr 덤프 옵션
1
|
| 12462 | |
| 12461 |
기타
입체분할 액션스크립트
|
| 61 | |
| 54 | |
| 46 | |
| 12458 | |
| 12456 | |
| 43 | |
| 12455 |
JavaScript
전자계산기 스크립트
|
| 29304 |
HTML
웹페이지 프린트하는 스크립트
3
|
| 29303 |
HTML
자동새로고침
|
| 29302 |
HTML
스타크래프트 로딩 스크립트
|
| 29300 |
HTML
미디어 연주기 소스
1
|
| 12454 |
기타
메일 폼 스크립트
|
| 29299 |
HTML
status바 반짝반짝
|
| 29298 |
HTML
메뉴가 하늘에서 뚝뚝 떨어집니다.
|
| 12453 |
JavaScript
텍스트 이동(물흐르듯이)
|
| 29297 |
HTML
멀티플 시계스크립트
|
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기