Tag: sms

Shell Script แจ้งเตือน SMS เมื่อ Hard Disk ใกล้เต็มแบบฟรีๆ

สวัสดีครับต่อยอดจากเรื่อง Server Down รู้ได้ทันทีผ่าน SMS แถมฟรี ที่เขียนไว้วันก่อน วันนี้เอามาประยุกต์ให้ script เช็คสถานะของ hard disk ครับโดยให้ส่ง sms เตือนเมื่อมีการใช้งาน partition ใดๆ เกิน 90%
มาดูตัว code ของ script กันครับ

#!/bin/sh # Simple SHELL script for Linux and UNIX system monitoring with # df command # ------------------------------------------------------------------------- # Copyright (c) 2009 mrGilL # This script is licensed under GNU GPL version 2.0 or above # ------------------------------------------------------------------------- # Setup SMS User below # See URL for more info: # http://imrgill.com/2009/12/13/monitor-server-with-sms-alert-shell-script/ # ------------------------------------------------------------------------- # Hard type (hdx,sdx,scx) HDD_TYPE="sd" # Partition lists PLIST=`df -h | grep $HDD_TYPE | awk '{ print $1 }' | sed -e 's/\/dev\///g'` # Setting SMS User (Gmail) GCUSER="user@gmail.com" GCPASSWD="gmail-passwd" for p in $PLIST do disk=$(df -h | grep $p | awk '{ print $5 }' | sed -e 's/\%//g') pname=$(df -h | grep $p | awk '{ print $6 }') if [ $disk -ge 90 ]; then # disk less than 90% wget --force-html --recursive --no-check-certificate -nd --delete-after "https://imrgill.com/google_sms/gsms.php?username=$GCUSER&password=$GCPASSWD&title=$(hostname) partition $pname < 90%" fi done

วิธีนำไปใช้

1. แก้ไข HDD_TYPE เป็นประเภท hard disk ที่คุณใช้ ดูได้จากคำสั่ง fdisk -l หรือ df ผลลัพธ์ที่ได้จะประมาณ /dev/sda ตัวอย่างผมได้ sda ให้ใส่เป็น HDD_TYPE=”sd”

[mrgill@Webserver ~]$ df Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda2 59515556 1260296 55183232 3% / /dev/sda8 11710104 2895576 8210084 27% /usr /dev/sda7 1019208 37992 928608 4% /tmp /dev/sda6 109109796 9092520 94385292 9% /var /dev/sda5 287660612 11604092 261208448 5% /home /dev/sda1 101086 33812 62055 36% /boot tmpfs 517284 0 517284 0% /dev/shm

*เหตุผลที่ไม่ใส่ sda ไปตรงๆ เลยก็เพราะ กรณีมี hard disk หลายลูกเช่น sda, sdb ทำให้ script ไม่สามารถตรวจสอบ hard disk ที่เป็น sdb ได้

2. แก้ไข GCUSER และ GCPASSWD เป็น user gmail ของเรา

3. กำหนดสิทธิ์ให้สามารถรันได้

[root@Webserver ~]$ chmod +x observman_disk.sh

4. นำ script ไปใส่ /etc/cron.daily/ เพื่อให้ script ทำงานทุกวัน

[root@Webserver ~]$ cp observman_disk.sh /etc/cron.daily/

หรือใครจะนำไปใส่ใน crontab ก็ไม่ว่ากัน

[root@Webserver ~]$ crontab -e
# m h dom mon dow command @daily /root/observman_disk.sh > /dev/null

หวังว่าบทความนี้คงเป็นประโยชน์ต่อผู้อ่าน

Share/Save

4 Comments December 13, 2009

Server Down รู้ได้ทันทีผ่าน SMS แถมฟรีด้วย

 

update 2015 ตอนนี้ google ยกเลิกนโยบายส่ง sms เข้ามือถือแล้วครับ เพราะ smart phone เป็นที่แพร่หลาย

update 27/09/2012 ครับ เนื่องด้วยมีผู้ใช้งาน script ผ่าน blog ของผมเป็นจำนวนมากทำให้ cpu ของเครืื่อง server hosting ทำงานหนักผมจึงขอเอาไฟล์ gsms.php ออกจาก blog นะครับใครต้องการใช้ script สามารถโหลดเอาไปติดตั้งกันได้เองตามตอนท้ายบทความได้เลยครับ

ีupdate status 06/03/2012 script ยังใช้งานได้ครับ

ก่อนอื่นขอหาวยาวๆ ก่อนกล่าวสวัสดีท่านผู้อ่านทุกท่าน  เมื่อคืนบ้าพลังอะไรไม่รู้อยากเขียน script ส่ง sms เตือนเมื่อ server down ที่จริงชาวบ้านเค้าก็ทำขายกันเยอะแยะ แต่หลังจากที่ผมได้ใช้ Google Calendar แล้วให้มันส่ง sms เตือนแถมฟรีอีก ก็เลยคิดอยากใช้ประโยชน์จากมันเพิ่มเติมก็ค้นๆ  Google อีกเช่นเคยครับ ไปเจอบทความใน ThaiAdmin เรื่อง google calendar sms ที่ท่าน smartsoft เขียนไว้ก็เลยลองโหลด Libraries Google Calendar SMS มาเล่นดูบ้าง ซึ่งเมื่อลองดูแล้วก็ถือว่าใช้งานง่ายทีเดียวเลยเอามาโมต่อ โดยให้ Shell Script เป็นตัว Submit form แทน

ความสามารถของ Script

1. ส่ง sms แจ้งเตือนเมื่อ ping ไม่เจอ server
2. เก็บ log ในตัว เพราะทุกครั้งที่มันส่ง sms มันจะไปเพิ่ม Event ใน Google Calendar ทำให้เราเข้าไปตรวจสอบย้อนหลังได้
3. ไม่ต้องเสียเงินค่าส่ง SMS แม้แต่น้อย (พี่ Google เค้าใจดี)

มาดูขั้นตอนการทำกัน

ก่อนอื่นเราก็ต้องไป Verify เบอร์มือถือใน Google Calendar ก่อนครับ ขออนุญาตท่าน smartsoft ทำรูปใหม่นะครับ
1. ขั้นแรก ล็อกอินเข้า Google Calendar http://www.google.com/calendar ก็ใช้ User ของ Gmail นั้นแหละครับ
ล็อกอินแล้วคลิกที่ Settings เพื่อไปปรับเมนูให้เป็นภาษาไทย (หากใครเป็นภาษาไทยอยู่แล้วข้ามไปขั้นตอนต่อไปได้เลย)

คลิก Settings

2. เลือก Language ให้เป็น ภาษาไทย แล้วกด Save

เลือก ภาษาไทย

(more…)

65 Comments December 11, 2009


Recent Entries

Random Posts

Social Network

Tag Cloud

Calendar

August 2019
S M T W T F S
« Jun    
 123
45678910
11121314151617
18192021222324
25262728293031

Twitter: imrgill

RSS LinuxToday

RSS HowToForge

RSS UbuntuClub

RSS Blognone

RSS PowerWindowsBlog

Tag

Categories

Archives

Blogroll