LINUX

리눅스 시스템 간단모니터링하는 스크립트
  • 조회수 9,390
  • 작성일 2008-08-31
  •  

1. check.sh 만들기 

[root@isp-dns ~]# vi check.sh  

  #!/bin/sh
echo -e "\n 1. Date :"
date

echo -e "\n 2. Disk size :"
df -h

echo -e "\n 3. Memory size :"
free

echo -e "\n 3-1. Memory status :"
vmstat 2 5

echo -e "\n 4. CPU and I/O status :"
iostat 2 5

echo -e "\n 5. Port scan :"
netstat -an | grep LISTEN

echo -e "\n 6. Remote connection process list :"
netstat -atnp

echo -e "\n 7. Check /tmp :"
ls -al /tmp

echo -e "\n 8. Check /var/tmp :"
ls -al /var/tmp

echo -e "\n 9.  Check mail count of Queue :"
ls -l /var/spool/mqueue | wc -l

echo -e "\n 10. Check execute process : "
pstree

echo -e "\n 11. check last connection user :"
lastlog | grep -v "Once"


echo -e "\n 12. Uptime"
uptime

echo -e "\n 13. current log in user list :"
finger


2. check 권한주기
[root@isp-dns ~]# ls -al check.sh
-rw-r--r--    1 root     root          385  1월 10 00:09 check.sh
[root@isp-dns ~]# chmod 755 check.sh
[root@isp-dns ~]# ./check.sh


3. 크론텝에 등록하여 매일 메일로 받기

[root@isp-dns ~]# crontab -e

MAILTO=abc@adma.kr
00 03,15 * * *  /usr/sbin/ntpdate time.bora.net &> /dev/null
00 09 * * *     /home/ncadmin/disk.py
00 07 * * * '/root/check.sh | mail -s "System Check ip address adma.kr " abc@adma.kr'


4. 실행

[root@isp-dns ~]# /root/check.sh | mail -s "System Check ip address yejin.pe.kr " abc@adma.kr

 

트라블 슈팅

[topasvga@localhost ~]$ ./check.sh
./check.sh: ./check.sh: cannot execute binary file

=>   echo -e "\n 8. 최후접속자 점검"  <-   \n 때문에 안되는것임.  echo부분은 복사해서 넣지 말고 직접vi로 수정해야함.