Reff ::
http://opensource.cc.psu.ac.th/บันทีกนี้ปรับปรุงล่าสุดเมื่อวันที่ 14-05-2553
ดูแลโดย WIPAT
ทดสอบกับ ubuntu 10.04
ต้นฉบับจาก
http://www.apcupsd.com ใช้ได้กับ ups ยี่ห้อ APC แบบ smart ที่ใช้ serial port สามารถตั้งเวลาปิดเปิดอัตโมัติได้
หากเป็น ups ยี่ห้ออื่น ให้ใช้โปรแกรม nut มีคำแนะนำตามบันทึก ติดตั้ง nut บน ubuntu
ตอนไฟดับ ระบบสั่งปิดเครื่องได้อย่างเดียว ตอนไฟมา ups เปิดตัวเองไม่เป็น เราต้องมาเปิด ups ด้วยตนเอง
ตั้งแต่เวอร์ชั่น 3.14.0 ขึ้นไป ยกเลิกการประยุกต์ใช้ server หลายตัวเข้ากับ ups ตัวเดียวในรูปแบบ Master/Slave
แต่ใช้รูปแบบ NIS server (ไม่เกี่ยวกับ NIS ของ SUN)
ขอแนะนำให้ใช้รูปแบบ NIS server ทุกรุ่น
ตอน start apcupsd ให้รอสัก 1 นาที เพื่อให้ระบบทำงาน จึงค่อยตรวจสอบ status
1.ติดตั้งด้วยคำสั่ง sudo apt-get install apcupsd apcupsd-cgi
2.แก้ไขแฟ้ม /etc/default/apcupsd เปลี่ยนค่าให้เป็น ISCONFIGURED=yes
3.ถ้าใช้ UPS กับ server ตัวเดียว ไม่ต้องปรับแต่งค่าอะไร
*** ตัวอย่างนี้ ใช้กับ serial port เท่านั้น
ตัวอย่างค่าในแฟ้ม /etc/apcupsd/apcupsd.conf คือ
UPSCABLE smart
UPSTYPE smartups
DEVICE /dev/ttyS0
UPSCLASS standalone
UPSMODE disable
หากเป็น usb ตัวอย่างค่าในแฟ้มเป็นดังนี้ (บรรทัด DEVICE ไม่ต้องตั้งค่าใดๆ)
UPSCABLE usb
UPSTYPE usb
DEVICE
UPSCLASS standalone
UPSMODE disable
ลองตรวจสอบว่าหากเป็นประมาณข้างบนก็ใช้ได้เลย
4.เริ่มการทำงานด้วยคำสั่ง sudo /etc/init.d/apcupsd start
5.ตรวจสอบผลและสถานะด้วยคำสั่ง sudo /etc/init.d/apcupsd status
6.ดูผลตัวอย่างข้อมูลผ่าน www ได้ที่ url ว่า
http://myhost.net/cgi-bin/apcupsd/multimon.cgiสามารถกำหนดสิทธิ์การเข้าไปดูผล โดยจัดการแฟ้ม /etc/httpd/conf.d/apcupsd.conf
7.หากต้องการติดตั้ง UPS กับ server หลายตัว ต้องต่อกันเป็นแบบ NIS แยกเป็น NIS server และ NIS client
ตัว NIS server คือ server ที่มี UPS ต่อผ่าน serial port ซึ่งจะมีการรับส่งสัญญาณกับ UPS โดยตรง
ส่วน NIS client คือ server ที่ไม่มีการต่อผ่าน UPS โดยตรง แต่อาศัยการรับสัญญาณจาก NIS server เท่านั้น
ในระบบหนึ่งๆจะมี NIS server เพียงตัวเดียว แต่มี NIS client ที่เป็นสมาชิกได้หลายๆตัว
ต้องแก้ไข config ในแฟ้ม /etc/apcupsd/apcupsd.conf เพื่อให้เวลาไฟดับแล้วระบบจะสั่ง shutdown server สมาชิกทุกตัว
8.ตัวอย่างสำหรับ Server ตัวที่ต่อกับ UPS ผ่าน serial เป็น NIS server ให้แก้ไขแฟ้ม /etc/apcupsd/apcupsd.conf
ปรกติจะเหมือนกับแบบ standalone ตัวเดียว เพียงแต่เพิ่มบรรทัดว่า NETSERVER on เท่านั้น
UPSCABLE smart
UPSTYPE smartups
DEVICE /dev/ttyS0
UPSCLASS standalone
UPSMODE disable
NETSERVER on
NISIP 0.0.0.0
NISPORT 3551
9.ตัวอย่างสำหรับ Server สมาชิกตัวที่ต่อเป็น NIS client ให้แก้ไขแฟ้ม /etc/apcupsd/apcupsd.conf ดังนี้
UPSCABLE ether
UPSTYPE net
DEVICE mymaster.com:3551
UPSCLASS standalone
UPSMODE disable
10.ทดสอบตรวจสอบระบบด้วยคำสั่ง sudo /etc/init.d/apcupsd status หากมีข้อความฟ้องประมาณว่า
FATAL ERROR in apcaccess.c at line 243
tcp_open: cannot connect to server localhost on port 3551.
ERR=Connection refused
ไม่ต้องตกใจ เนื่องจากระบบตื่นช้า รอสัก 1 นาที แล้วลองใหม่
ตัวอย่างข้อมูลที่ได้จาก NIS server
APC : 001,051,1213
DATE : Fri Feb 23 15:00:37 ICT 2007
HOSTNAME : ftp1.psu.ac.th
RELEASE : 3.14.0
VERSION : 3.14.0 (9 February 2007) redhat
UPSNAME : FTP
CABLE : Custom Cable Smart
MODEL : Smart-UPS 2200
UPSMODE : Stand Alone
STARTTIME: Fri Feb 23 14:59:18 ICT 2007
STATUS : ONLINE
LINEV : 220.3 Volts
LOADPCT : 22.1 Percent Load Capacity
BCHARGE : 100.0 Percent
TIMELEFT : 70.0 Minutes
MBATTCHG : 5 Percent
MINTIMEL : 3 Minutes
MAXTIME : 0 Seconds
MAXLINEV : 221.7 Volts
MINLINEV : 218.8 Volts
OUTPUTV : 220.3 Volts
SENSE : Medium
DWAKE : 300 Seconds
DSHUTD : 090 Seconds
DLOWBATT : 02 Minutes
LOTRANS : 196.0 Volts
HITRANS : 253.0 Volts
RETPCT : 060.0 Percent
ITEMP : 23.4 C Internal
ALARMDEL : 5 seconds
BATTV : 55.4 Volts
LINEFREQ : 50.2 Hz
LASTXFER : Unacceptable line voltage changes
NUMXFERS : 0
TONBATT : 0 seconds
CUMONBATT: 0 seconds
XOFFBATT : N/A
SELFTEST : NO
STESTI : 336
STATFLAG : 0x07000008 Status Flag
REG1 : 0x00 Register 1
REG2 : 0x00 Register 2
REG3 : 0x00 Register 3
MANDATE : 04/19/05
SERIALNO : JS0517007488
BATTDATE : 04/19/05
NOMOUTV : 230
NOMBATTV : 48.0
EXTBATTS : 0
FIRMWARE : 654.12.I
APCMODEL : FWI
END APC : Fri Feb 23 15:00:40 ICT 2007
ตัวอย่างข้อมูลที่ได้จาก NIS client
APC : 001,042,1046
DATE : Fri Feb 23 15:02:39 ICT 2007
HOSTNAME : vc1
RELEASE : 3.12.4
VERSION : 3.12.4 (19 August 2006) redhat
UPSNAME : FTP
CABLE : Ethernet Link
MODEL : Smart-UPS 2200
UPSMODE : Stand Alone
STARTTIME: Fri Feb 23 14:52:56 ICT 2007
MASTERUPD: Fri Feb 23 15:02:39 ICT 2007
MASTER : ftp.psu.ac.th:3551
STATUS : ONLINE SLAVE
LINEV : 220.3 Volts
LOADPCT : 21.4 Percent Load Capacity
BCHARGE : 100.0 Percent
TIMELEFT : 72.0 Minutes
MBATTCHG : 5 Percent
MINTIMEL : 3 Minutes
MAXTIME : 0 Seconds
MAXLINEV : 221.7 Volts
MINLINEV : 218.8 Volts
OUTPUTV : 220.3 Volts
SENSE : Medium
DLOWBATT : 02 Minutes
LOTRANS : 196.0 Volts
HITRANS : 253.0 Volts
RETPCT : 060.0 Percent
ITEMP : 23.4 C Internal
BATTV : 55.4 Volts
LINEFREQ : 50.0 Hz
LASTXFER : Unacceptable line voltage changes
NUMXFERS : 0
TONBATT : 0 seconds
CUMONBATT: 0 seconds
XOFFBATT : N/A
SELFTEST : NO
11. ถ้าต้องการให้ส่งอีเมล์แจ้งปัญหาเตือนแก่ผู้ดูระบบ ต้องปรับปรุงแฟ้มดังต่อไปนี้คือ
/etc/apcupsd/changeme, /etc/apcupsd/commfailure, /etc/apcupsd/commok, /etc/apcupsd/offbattery, /etc/apcupsd/onbattery
แก้ไขเปลี่ยนข้อความบรรทัดจากเดิมว่า APCUPSD_MAIL="mail"
ให้เป็นว่า APCUPSD_MAIL="/usr/sbin/sendmail"
แก้ไขให้ครบทุกแฟ้ม ต่อไปเมื่อระบบมีปัญหาก็จะมีอีเมล์แจ้งเตือนให้แก่ผู้ดูแลระบบ