Jak zprovoznit UPS na Linuxu: Porovnání verzí

Z HKfree wiki
Skočit na navigaci Skočit na vyhledávání
m (Locutus přesunul stránku JakZprovoznitUPSNalinuxu na Jak zprovoznit UPS na Linuxu)
Řádek 1: Řádek 1:
== Linux vs UPS ==
+
== Linux vs. UPS ==
  
Pokud máme u routeru UPS, můžeme ji lehce spojit se systémem a využívat výhod. Asi nejprioritnější je možnost ukončení (zahaltování) systému v případě, že ups už končí baterie a vypnutí je neodvratné. Linux moc rád vypnutí bez řádného ukončení rád nemá, tak je nanejvýš hodné mu to umožnit.
+
Pokud máme u routeru UPS, můžeme ji lehce spojit se systémem a využívat výhod. Asi nejprioritnější je možnost ukončení (zahaltování) systému v případě, že UPS už končí baterie a vypnutí je neodvratné. Linux vypnutí bez řádného ukončení rád moc nemá, tak je nanejvýš vhodné mu to umožnit.
  
Uvedený příklad jsem použil na Debianu a Smart-UPS 750 XL, propojeno skrz USB-
+
Uvedený příklad jsem použil na Debianu a Smart-UPS 750 XL, propojeno přes USB.
  
 
Já jsem použil program APCUPSD. V Debianu se dá lehce nainstalovat z repozitáře, současně s ním nainstalujeme i ještě jeden jeho prográmek pro grafické zobrazování stavu a nakonec program pro emailovou notifikaci.
 
Já jsem použil program APCUPSD. V Debianu se dá lehce nainstalovat z repozitáře, současně s ním nainstalujeme i ještě jeden jeho prográmek pro grafické zobrazování stavu a nakonec program pro emailovou notifikaci.
  
Bližší popis programu a nastavení je např. tady
+
Bližší popis programu a nastavení je např. tady:
  
 
[http://www.linux.cz/noviny/2001-08/clanek07.html http://www.linux.cz/noviny/2001-08/clanek07.html]
 
[http://www.linux.cz/noviny/2001-08/clanek07.html http://www.linux.cz/noviny/2001-08/clanek07.html]
  
Začneme instalací.
+
Začneme instalací,
  
 
  apt-get install apcupsd
 
  apt-get install apcupsd
Řádek 17: Řádek 17:
 
  apt-get install sendemai
 
  apt-get install sendemai
  
po instalaci editujeme '''/etc/apcupsd/apcupsd.conf''' a upravíme následující na hodnoty
+
po instalaci editujeme '''/etc/apcupsd/apcupsd.conf''' a upravíme následující na hodnoty,
  
 
  UPSCABLE usb
 
  UPSCABLE usb
Řádek 23: Řádek 23:
 
  #DEVICE /dev/ttyS0
 
  #DEVICE /dev/ttyS0
  
uložíme, dále editujeme soubor '''/etc/default/apcupsd''' a změníme
+
uložíme, dále editujeme soubor '''/etc/default/apcupsd''' a změníme,
  
 
  ISCONFIGURED=yes
 
  ISCONFIGURED=yes
  
Teď provedeme restart služby
+
teď provedeme restart služby,
  
 
  service apcupsd restart
 
  service apcupsd restart
  
tím nám běží komunikace s ups, můžeme zkontrolovat napsáním příkazu
+
tím nám běží komunikace s ups, můžeme zkontrolovat napsáním příkazu,
  
 
  apcaccess
 
  apcaccess
  
jeho výpis by měl vypadat následovně
+
jeho výpis by měl vypadat následovně:
  
  APC      : 001,043,1059
+
APC      : 001,043,1059
 
  DATE    : 2013-01-29 22:03:50 +0100
 
  DATE    : 2013-01-29 22:03:50 +0100
 
  HOSTNAME : zvonicka
 
  HOSTNAME : zvonicka
Řádek 91: Řádek 91:
 
  ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
 
  ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
  
resetovat apache
+
restartovat apache,
  
 
  service apache2 restart
 
  service apache2 restart
  
a můžeme se podívat jak to krásně vypadá
+
a můžeme se podívat jak to krásně vypadá,
  
 
'''http://localhost/cgi-bin/apcupsd/multimon.cgi'''
 
'''http://localhost/cgi-bin/apcupsd/multimon.cgi'''
  
místo localhost si dejte ip adresu stroje ke kterému je ups připojena
+
místo localhost si dejte ip adresu stroje ke kterému je ups připojena.
  
takhle to vypadá u mě
+
Takhle to vypadá u mě:
  
 
[http://10.107.90.65/cgi-bin/apcupsd/multimon.cgi http://10.107.90.65/cgi-bin/apcupsd/multimon.cgi]
 
[http://10.107.90.65/cgi-bin/apcupsd/multimon.cgi http://10.107.90.65/cgi-bin/apcupsd/multimon.cgi]
Řádek 107: Řádek 107:
 
== Emailová notifikace ==
 
== Emailová notifikace ==
  
Tak ups již komunikuje a systém o ní ví. Bylo by dobré aby v případě výpadku napájení poslal dotyčný počítač varovný email. Z emailu už pak jednoduše dostanete sms na mobil a víte, že se něco děje. Na to nám poslouží třetí program '''sendemail'''.
+
Tak UPS již komunikuje a systém o ní ví. Bylo by dobré, aby v případě výpadku napájení poslal dotyčný počítač varovný email. Z emailu už pak jednoduše dostanete sms na mobil a víte, že se něco děje. Na to nám poslouží třetí program '''sendemail'''.
  
 
Pokud si otevřete '''/etc/apcupsd''' je tam několik skripů, zkráceně si je popíšeme
 
Pokud si otevřete '''/etc/apcupsd''' je tam několik skripů, zkráceně si je popíšeme
Řádek 136: Řádek 136:
 
  exit 0
 
  exit 0
  
pokud takto upravite i ostatni skripty dostanete celkem solidni info o tom co se právě s ups děje. Do emailu se přikládá i výpis z apcaccess, takže víte kolik zbejvá času než nastane shutdown :)
+
pokud takto upravíte i ostatní skripty dostanete celkem solidní info o tom co se právě s UPS děje. Do emailu se přikládá i výpis z apcaccess, takže víte kolik zbejvá času než nastane shutdown :)
  
 
článek bude průběžně doplňován novými zkušenostmi
 
článek bude průběžně doplňován novými zkušenostmi
  
 
Pajavlk
 
Pajavlk

Verze z 15. 2. 2013, 17:42

Linux vs. UPS

Pokud máme u routeru UPS, můžeme ji lehce spojit se systémem a využívat výhod. Asi nejprioritnější je možnost ukončení (zahaltování) systému v případě, že UPS už končí baterie a vypnutí je neodvratné. Linux vypnutí bez řádného ukončení rád moc nemá, tak je nanejvýš vhodné mu to umožnit.

Uvedený příklad jsem použil na Debianu a Smart-UPS 750 XL, propojeno přes USB.

Já jsem použil program APCUPSD. V Debianu se dá lehce nainstalovat z repozitáře, současně s ním nainstalujeme i ještě jeden jeho prográmek pro grafické zobrazování stavu a nakonec program pro emailovou notifikaci.

Bližší popis programu a nastavení je např. tady:

http://www.linux.cz/noviny/2001-08/clanek07.html

Začneme instalací,

apt-get install apcupsd
apt-get install apcupsd-cgi
apt-get install sendemai

po instalaci editujeme /etc/apcupsd/apcupsd.conf a upravíme následující na hodnoty,

UPSCABLE usb
UPSTYPE usb
#DEVICE /dev/ttyS0

uložíme, dále editujeme soubor /etc/default/apcupsd a změníme,

ISCONFIGURED=yes

teď provedeme restart služby,

service apcupsd restart

tím nám běží komunikace s ups, můžeme zkontrolovat napsáním příkazu,

apcaccess

jeho výpis by měl vypadat následovně:

APC      : 001,043,1059
DATE     : 2013-01-29 22:03:50 +0100
HOSTNAME : zvonicka
VERSION  : 3.14.10 (13 September 2011) debian
UPSNAME  : zvonicka
CABLE    : USB Cable
DRIVER   : USB UPS Driver
UPSMODE  : Stand Alone
STARTTIME: 2013-01-27 22:44:37 +0100
MODEL    : Smart-UPS 750 XL
STATUS   : ONLINE
LINEV    : 240.4 Volts
LOADPCT  :  24.7 Percent Load Capacity
BCHARGE  : 100.0 Percent
TIMELEFT :  84.0 Minutes
MBATTCHG : 5 Percent
MINTIMEL : 3 Minutes
MAXTIME  : 0 Seconds
OUTPUTV  : 240.4 Volts
SENSE    : High
DWAKE    : -01 Seconds
DSHUTD   : 180 Seconds
LOTRANS  : 208.0 Volts
HITRANS  : 253.0 Volts
RETPCT   : 000.0 Percent
ITEMP    : 25.6 C Internal
ALARMDEL : 30 seconds
BATTV    : 27.7 Volts
LINEFREQ : 50.0 Hz
LASTXFER : No transfers since turnon
NUMXFERS : 0
TONBATT  : 0 seconds
CUMONBATT: 0 seconds
XOFFBATT : N/A
SELFTEST : NO
STESTI   : 14 days
STATFLAG : 0x07000008 Status Flag
MANDATE  : 2008-02-15
SERIALNO : AS0807211830
BATTDATE : 2012-02-03
NOMOUTV  : 230 Volts
NOMBATTV :  24.0 Volts
FIRMWARE : 680.18.I USB FW:7.3
END APC  : 2013-01-29 22:04:03 +0100

Grafické zobrazení hodnot a stavu

Multimon.gif

Status.png

To nám zajistí druhý nainstalovaný prográmek apcupsd-cgi skrz svoje cgi skripty. Předpokládám, že apache už nainstalovaný je. Aby to správně chodilo je třeba přidat do /etc/apache/apache2.conf nakonec toto:

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/

restartovat apache,

service apache2 restart

a můžeme se podívat jak to krásně vypadá,

http://localhost/cgi-bin/apcupsd/multimon.cgi

místo localhost si dejte ip adresu stroje ke kterému je ups připojena.

Takhle to vypadá u mě:

http://10.107.90.65/cgi-bin/apcupsd/multimon.cgi

Emailová notifikace

Tak UPS již komunikuje a systém o ní ví. Bylo by dobré, aby v případě výpadku napájení poslal dotyčný počítač varovný email. Z emailu už pak jednoduše dostanete sms na mobil a víte, že se něco děje. Na to nám poslouží třetí program sendemail.

Pokud si otevřete /etc/apcupsd je tam několik skripů, zkráceně si je popíšeme

changneme – aktivován při expiraci baterie, baterie potřebuje vyměnit commfailure a commok – ztráta a obnovení komunikace s ups off a on battery – je jasné :)

ukážeme si to na skriptu onbattery, ten se aktivuje jakmile vypadne napájení

tady je můj obsah onoho skriptu i s posíláním varovného emailu

SYSADMIN=pvlcek@seznam.cz
APCUPSD_MAIL="/usr/bin/sendemail"
HOSTNAME=`hostname`
MSG="$HOSTNAME Vypadek napajeni UPS ZAPNUTA !!!"
#
(
   echo "Subject: $MSG"
   echo " "
   echo "$MSG"
   echo " "
   /sbin/apcaccess status
) | $APCUPSD_MAIL -u "$MSG" -f pvlcek@seznam.cz -t $SYSADMIN -s smtp.hkfree.org:25
touch /etc/apcupsd/powerfail
exit 0

pokud takto upravíte i ostatní skripty dostanete celkem solidní info o tom co se právě s UPS děje. Do emailu se přikládá i výpis z apcaccess, takže víte kolik zbejvá času než nastane shutdown :)

článek bude průběžně doplňován novými zkušenostmi

Pajavlk