아

서버 상태 값 주기적으로 메일로 발송하기

서버가 많을 경우, 당연 별도 솔루션이나 장비 등을 통해 모니터링을 하는 것이 맞지만 그렇지 않을 경우
서버당 들어가서 부하량이나 기타 등등의 값을 수작업하여 조회해야 합니다.

이러한 불편함을 아주 간단히 ()|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개

logwatch 보다 가벼우면서 보기도 좋네요
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
12-01-11 조회 2,775
12-01-11 조회 1.2만
12-01-10 조회 2,871
12-01-08 조회 3,460
12-01-05 조회 5,349
11-12-29 조회 3,068
11-12-27 조회 2,858
11-12-25 조회 3,038
11-12-22 조회 3,475
11-12-14 조회 2,936
11-12-12 조회 3,573
11-11-28 조회 3,394
10-10-19 조회 2,853
08-09-05 조회 3,770
08-09-05 조회 3,589
08-06-14 조회 3,328
08-04-22 조회 3,611
08-04-17 조회 3,615
07-10-03 조회 4,225
07-10-03 조회 3,620
07-10-03 조회 7,303
07-10-03 조회 4,580
07-10-03 조회 3,284
07-10-03 조회 2,873
07-10-02 조회 3,588
07-10-02 조회 3,114
07-09-27 조회 5,036
07-09-27 조회 3,861
06-09-26 조회 3,524
06-09-26 조회 4,746
06-09-22 조회 3,919
06-09-22 조회 3,537
06-09-22 조회 4,288
06-09-21 조회 4,216
06-08-18 조회 3,709
05-11-30 조회 4,752
05-07-15 조회 4,608
05-03-23 조회 4,662
05-03-14 조회 3,331
05-03-13 조회 2,705
04-08-05 조회 5,781