Vous êtes sur la page 1sur 6

DuliMind

Computador, GNU/Linux e T ecnologia.

terça-feira, 27 de setembro de 2016

Como gerenciar nobreak no Ubuntu e CentOS


Se você tem um pequeno ser vidor em casa ou no trabalho, seguramente não vai querer que
quedas repentinas de energia estraguem ou façam com que v ocê perca seus arquivos ou
danifique seu sistema oper acional.

Hoje em dia, com sistemas de ar quivos com "journaling" (log de t odas as alterações antes de
escrever os dados no disco), como é o caso do ext4 e outros, é difícil que os dados sejam
corrompidos em razão de travamento ou quedas de energia. Difícil, mas não impossív el.

Por isso, é interessante ter o servidor ou mesmo seu N AS (Network-Attached Storage) ligado a
um nobreak. Mas a não ser que você esteja por perto quando acabar a energia, para que possa
fazer o desligamento manual do computador, pode não adiantar muito, ainda que você tenha um
nobreak, porque assim que acabar a bateria do nobr eak o computador será desligado
abruptamente.

Além disso, esse esgotament o da bateria não é nem um pouco saudá vel para ela, que por conta
de sucessivos "esgotamentos" terminará exigindo substituição rapidamente. Por isso, você deve
evitar ao máximo que sua bateria se ja completamente esgotada.
Para tanto, mesmo com nobreaks não profissionais, como por exemplo um antigo APC Back UPS
ES 600, desde que tenha porta de comunicação, é possível configurar seu servidor para desligar
automaticamente (e suavemente), tão-logo seja detectada queda de ene rgia pelo nobreak.

O nobreak citado, por exemplo, já vem com um cabo USB para fazer a conexão com o
computador.

O daemon (ou "serviço") que se encarregará da tarefa no seu servidor é o apcupsd.

Para instalar no Ubuntu:


apt-get install apcupsd

No CentOS, você precisará do repositório EPEL. Instruções aqui.

Depois:
yum install apcupsd usbutils
chkconfig apcupsd on

Após conectar o nobreak com o cabo USB, veja se ele é reconhecido:


me@myserver:~$ lsusb
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 002: ID 051d:0002 American Power Conversion Uninterruptible Power Supply
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Em caso positivo, ele será identificado por um dispositiv o em /dev/usb:


me@myserver:~$ ls -l /dev/usb
total 0
crw------- 1 root root 180, 0 Sep 27 19:04 hiddev0

Agora edite o arquivo de configuração (Ubuntu e CentOS):


nano /etc/apcupsd/apcupsd.conf

E ajuste, no mínimo, as seguintes opções:


UPSNAME NomeDoNobreak
UPSCABLE usb
UPSTYPE usb
DEVICE /dev/usb/hiddev0
POLLTIME 60

No Ubuntu:
nano /etc/default/apcupsd

E ajuste a seguinte opção:


ISCONFIGURED=yes

Agora assegure-se de que o serviço está sendo executado:

No Ubuntu e CentOS:
service apcupsd start

Se tudo correu bem, você já conseguirá exibir o status do nobreak pelo comando:
me@myserver:~$ apcaccess status
APC      : 001,036,0910
DATE     : 2016-09-27 22:15:24 -0300
HOSTNAME : mtserver
VERSION  : 3.14.10 (13 September 2011) debian
UPSNAME  : BackUPS600
CABLE    : USB Cable
DRIVER   : USB UPS Driver
UPSMODE  : Stand Alone
STARTTIME: 2016-09-27 19:05:06 -0300
MODEL    : Back-UPS ES 600P
STATUS   : TRIM ONLINE
LINEV    : 225.0 Volts
LOADPCT  :  17.0 Percent Load Capacity
BCHARGE  : 100.0 Percent
TIMELEFT :   2.8 Minutes
MBATTCHG : 5 Percent
MINTIMEL : 3 Minutes
MAXTIME  : 11 Seconds
SENSE    : Medium
LOTRANS  : 176.0 Volts
HITRANS  : 264.0 Volts
ALARMDEL : 30 seconds
BATTV    : 13.8 Volts
LASTXFER : No transfers since turnon
NUMXFERS : 0
TONBATT  : 0 seconds
CUMONBATT: 0 seconds
XOFFBATT : N/A
SELFTEST : NO
STATFLAG : 0x0700000A Status Flag
SERIALNO : 5B1217T06246
BATTDATE : 2012-04-25
NOMINV   : 220 Volts
NOMBATTV :  12.0 Volts
NOMPOWER : 360 Watts
FIRMWARE : 897.Q3 .D USB FW:Q3
END APC  : 2016-09-27 22:15:55 -0300

A princípio, já está tudo funcionando. É só tir ar o nobreak da tomada e fazer o teste.

Para conseguir fazer o teste rapidamente, pode ser que seja necessário alter ar a opção abaixo, a
fim de que o nobreak dispare a ordem para o computador desligar mais r apidamente:

Arquivo /etc/apcupsd/apcupsd.conf:
TIMEOUT 1

Isso significa que após 01 segundo da notícia do desligament o da energia do nobreak, o apcupsd
já iniciará o processo de desligamen to do computador.

Aliás, dependendo do seu nobr eak, se ele for bem simples mesmo e não forneça informações
sobre a percentagem da bateria etc., pode ser que v ocê precise deixar essa opção TIMEOUT
habilitada permanentemente, ob viamente na quantidade de segundos desejada.
Ao fazer o teste de queda de ener gia, você poderá acompanhar os eventos recebidos pelo serviço
apcupsd com:
tail -f /var/log/apcupsd.events

Quando o nobreak for desconectado da energia, já aparecerá:


2016-09-27 19:01:40 -0300  Power failure.

E assim que for esgotado o tempo limite da bateria ou algum outr o critério definido no arquivo de
configuração, o serviço dirá:
2016-09-27 19:01:46 -0300  Reached remaining time percentage limit on batteries.
2016-09-27 19:01:46 -0300  Initiating system shutdown!

E pronto, seu computador será desligado suavemente.

Após o desligamento do computador, o próprio nobreak será totalmente desligado, a fim de


preservar a bateria. É a chamada " operação killpower", cuja ordem é enviada para o nobreak
durante o processo de desligamento do computador.

Ao ser conectada a energia novamente ao nobreak, depois de alguns segundos ele ligar á
novamente e, consequentemente, o computador também (desde que no BIOS o computador
esteja ajustado para "Power on" na opção "Restore on AC/Power Loss"  - o nome da opção pode
variar no BIOS).

Também é possível testar a comunicação com o nobr eak e até promover calibragem e autotestes
nele. Para tanto, é preciso desabilitar o ser viço apcupsd:
sudo service apcupsd stop

E então executar o teste:


gerente@mserver:~$ sudo apctest

2016-09-27 23:01:14 apctest 3.14.10 (13 September 2011) debian


Checking configuration ...
Attached to driver: usb
sharenet.type = Network & ShareUPS Disabled
cable.type = USB Cable
mode.type = USB UPS Driver
Setting up the port ...
Doing prep_device() ...

You are using a USB cable type, so I'm entering USB test mode
Hello, this is the apcupsd Cable Test program.
This part of apctest is for testing USB UPSes.

Getting UPS capabilities...SUCCESS

Please select the function you want to perform.

1)  Test kill UPS power


2)  Perform self-test
3)  Read last self-test result
4)  View/Change battery date
5)  View manufacturing date
6)  View/Change alarm behavior
7)  View/Change sensitivity
8)  View/Change low transfer voltage
9)  View/Change high transfer voltage
10) Perform battery calibration
11) Test alarm
12) View/Change self-test interval
 Q) Quit

Select function number:

Depois que fizer os testes, não se esqueça de habilitar o ser viço novamente:
sudo service apcupsd start

Luis Felipe Marzagão às 23:08

Compartilhar 2

2 comentários:

CarlosAlberto4TI 28 de set de 2016 12:00:00


Este comentário foi removido pelo autor.
Responder

CarlosAlberto4TI 29 de set de 2016 09:45:00


Gostaria de aproveitar e informar que os nobreaks TS SHARA , agora são suportados pelo NUT na
versão 2.7.4 ou maior com driver nutdrv_qx (para ubuntu , pré compilado tem ppa :
https://launchpad.net/~tjormola/+archive/ubuntu/nut-unstable ).
Quis trazer a informação pois na internethá há essa informação fácil .
Responder
Digite seu comentário...

Comentar como: Flávio R. Batalha (Google) Sair

Publicar Visualizar Notifique-me

Página inicial ›
Visualizar versão para a web

Tecnologia do Blogger.

Vous aimerez peut-être aussi