En los primeros días de las computadoras personales, escribí el curso de capacitación de IBM para la PC IBM original. Para completar el curso a tiempo para la capacitación de IBM, ComputerLand y Sears, IBM me dio una PC para que me la llevara a casa y así pudiera trabajar durante las tardes y los fines de semana; podría decirse que es la primera vez que alguien tiene una PC de IBM en su hogar.
Hice este trabajo en Boca Raton, Florida, donde la pequeña compañía eléctrica local era conocida comúnmente como "Florida Flicker and Flash", por una buena razón. Los breves pero frecuentes cortes de energía hicieron que perdiera mi trabajo más de una vez. Desafortunadamente, no había sistemas de suministro de energía ininterrumpida (UPS) para mantener mi PC en funcionamiento durante estos incidentes molestos y, a veces, destructivos.
Un UPS mantiene una computadora funcionando lo suficiente como para soportar eventos menores de energía, como cortes y sobretensiones de unos pocos segundos hasta 20 o 30 minutos. En el caso de estos cortes prolongados, la función del UPS moderno es notificar a la computadora que se apague antes de que el UPS se quede sin batería. De lo contrario, la pérdida repentina de energía puede provocar la pérdida de datos.
La computadora y el UPS se comunican a través de un cable serial o USB. Un servicio del sistema administra las comunicaciones y envía los comandos apropiados tanto al UPS como a la computadora. Las computadoras con Windows generalmente usan una versión gratuita del software proporcionado por el proveedor de UPS. Sin embargo, la utilidad apcupsd es compatible con Linux, Windows, BSD, Solaris y macOS, lo que brinda coherencia en todos los sistemas operativos.
Este conjunto de herramientas es compatible con los sistemas UPS de APC y brinda diversos grados de soporte para los sistemas UPS producidos por Tripp-Lite, CyberPower y otros. Actualmente tengo sistemas UPS de estos tres fabricantes funcionando en redes de las que soy responsable. No he encontrado una lista de sistemas UPS compatibles. La documentación de apcupsd tampoco es útil en esto, y no he visto nada definitivo en ninguna búsqueda web.
Tenga en cuenta que la parte "APC" de los nombres de estas herramientas indica que fueron diseñadas para sistemas UPS de APC. Su eficacia en los sistemas de otros proveedores de UPS depende de qué tan cerca sigan la interfaz de administración de APC.
Instalar apcupsd en Linux
Debido a que está disponible en el repositorio de Fedora, la instalación de apcupsd es simple. Ejecute el siguiente comando como raíz para instalar apcupsd:
# dnf -y install apcupsd
Los siguientes comandos inician y habilitan apcupsd para que se reinicie después de reiniciar.
# systemctl start apcupsd ; systemctl enable apcupsd
Otras distribuciones también tienen apcupsd en sus repositorios.
Uso básico
En este punto, se ha iniciado el daemon apcupsd, por lo que puede interactuar con él usando el apcaccess
dominio. Este comando sin ninguna opción genera un informe de estado que describe el estado actual del UPS.
[root@test ~]# apcaccess
APC : 001,033,0831
DATE : 2021-11-30 21:08:10 -0500
HOSTNAME : test.both.org
VERSION : 3.14.14 (31 May 2016) redhat
UPSNAME : test.both.org
CABLE : USB Cable
DRIVER : USB UPS Driver
UPSMODE : Stand Alone
STARTTIME: 2021-11-27 13:08:58 -0500
MODEL : CP1500PFCLCDa
STATUS : ONLINE
LINEV : 120.0 Volts
LOADPCT : 32.0 Percent
BCHARGE : 100.0 Percent
TIMELEFT : 22.5 Minutes
MBATTCHG : 5 Percent
MINTIMEL : 3 Minutes
MAXTIME : 0 Seconds
OUTPUTV : 120.0 Volts
DWAKE : -1 Seconds
LOTRANS : 100.0 Volts
HITRANS : 139.0 Volts
ALARMDEL : 30 Seconds
NUMXFERS : 2
XONBATT : 2021-11-30 13:46:03 -0500
TONBATT : 0 Seconds
CUMONBATT: 5 Seconds
XOFFBATT : 2021-11-30 13:46:06 -0500
SELFTEST : NO
STATFLAG : 0x05000008
SERIALNO : CXXLT2001977
NOMINV : 120 Volts
NOMPOWER : 1000 Watts
END APC : 2021-11-30 21:08:17 -0500
[root@test ~]#
Más recursos de Linux
- Hoja de trucos de los comandos de Linux
- Hoja de trucos de comandos avanzados de Linux
- Curso en línea gratuito:Descripción general técnica de RHEL
- Hoja de trucos de red de Linux
- Hoja de trucos de SELinux
- Hoja de trucos de los comandos comunes de Linux
- ¿Qué son los contenedores de Linux?
- Nuestros últimos artículos sobre Linux
En el resultado anterior, hay tres campos de particular interés para administrar la batería de respaldo. El porcentaje de carga (LOADPCT) indica cuánta carga se coloca en el SAI. Cuando la unidad está enchufada y se aplica energía, la carga de la batería (BCHARGE) debe ser del 100 %, pero será menor cuando se quite la energía externa. El TIMELEFT es el campo de mayor preocupación. En este ejemplo, si falla la alimentación, el SAI puede funcionar con la carga actual durante 22,5 minutos.
Otros elementos a considerar incluyen la línea CUMONBATT, que es el tiempo acumulado que el UPS ha estado funcionando con batería. Este campo acumula todos los tiempos de corte de energía en múltiples eventos. La línea TONBATT es el momento de un evento actual de pérdida de energía en curso.
La página del manual de apcaccess describe el resto de los elementos de datos en esta salida. Los datos mostrados pueden diferir según el modelo de UPS.
Gestionar el SAI
En la salida de apcaccess
comando anterior, la línea AUTOTEST dice NO
. Esta respuesta significa que no se ha realizado una autocomprobación en este SAI desde que se inició acpupsd por última vez. Por lo general, ese sería el momento del último arranque del sistema. Las autopruebas se realizan una vez cada siete días en la mayoría de los sistemas UPS, pero puede iniciar una utilizando el apctest
comando.
Desafortunadamente, el apctest
El comando entra en conflicto con el demonio apcupsd, por lo que debe detener apcupsd temporalmente. Luego puede iniciar apctest, que utiliza una interfaz basada en menús.
[root@myserver ~]# systemctl stop apcupsd
[root@myserver ~]# apctest
2021-12-01 06:36:47 apctest 3.14.14 (31 May 2016) redhat
Checking configuration ...
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:
Advertencia: tenga cuidado de no elegir accidentalmente el elemento 1 porque eso apagará el UPS y, por lo tanto, la computadora.
Ingrese 2 y presione Enter para ejecutar una autoprueba de UPS. Tenga en cuenta que el menú se vuelve a mostrar antes de que la autocomprobación haya tenido suficiente tiempo para completarse, por lo que el resultado es IN PROGRESS
. Este resultado es del CyberPower UPS. El programa esperó a que se completara la autocomprobación en un SAI de APC antes de volver al menú.
<snip>
Select function number: 2
This test instructs the UPS to perform a self-test
operation and reports the result when the test completes.
Clearing previous self test result...CLEARED
Initiating self test...INITIATED
Waiting for test to complete...COMPLETED
Result of last self test: IN PROGRESS
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
El SAI emite un pitido para indicar que la autocomprobación ha finalizado. El patrón de pitido específico puede diferir según el proveedor y el modelo de UPS. Mi CyberPower CP1500PFCLCDa emite dos pitidos cortos. La alarma no sonará si se ha silenciado manualmente.
Una vez completada la autocomprobación, utilice el elemento de menú 3 para leer el resultado. En este caso, mi UPS ha superado la autocomprobación.
Select function number: 3
Result of last self test: PASSED
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:
La mayoría de estas otras opciones de menú no funcionan en mis dispositivos CyberPower, pero sí funcionan en los dispositivos UPS de APC, como era de esperar.
La calibración de la batería se puede utilizar en los sistemas UPS admitidos si la estimación del tiempo de funcionamiento restante del UPS es incorrecta. Esta opción desconecta el SAI de la alimentación principal y hace funcionar la computadora con la batería hasta que se descarga hasta aproximadamente el 10 % de su carga máxima. Este método permite una estimación más precisa del tiempo de funcionamiento con batería.
Asegúrese de reiniciar apcupsd después de salir del menú apctest.
Reflexiones finales
El paquete de programas apcupsd proporciona herramientas sencillas para monitorear y administrar los sistemas UPS de APC, y funciona con los sistemas UPS de otros proveedores en diversos grados. Brinda protección inteligente contra incidentes de energía y un apagado administrado si una interrupción dura hasta el límite de la carga de la batería.
El demonio en segundo plano apcupsd funciona con la mayoría de los sistemas UPS modernos y puede iniciar una secuencia de apagado en la computadora cuando la batería del UPS está demasiado baja. Descubrí que este es el caso de los tres proveedores para los que tengo sistemas UPS. Otras funciones, aquellas accesibles mediante el programa apctest, son problemáticas. Algunas de esas funciones pueden funcionar y otras no. Depende de la marca y el modelo de su sistema UPS.
La consideración más importante para mí es que el software apcupsd puede comunicarse con el UPS lo suficiente como para iniciar un comando de apagado a la computadora cuando la batería del UPS está baja. Lo segundo que me importa es la información disponible en apcaccess
dominio. El resto es simplemente agradable de tener.
Para aquellos que prefieren una interfaz GUI, las interfaces CGI web y GUI están disponibles en el repositorio de Fedora.
El software apcupsd es maduro y estable. El desarrollo se limita a corregir errores. Sería bueno tener un mejor soporte para los sistemas UPS de proveedores que no sean APC. Eso requeriría que los proveedores cooperen y admitan la interfaz completa de comunicaciones del software de APC.
El soporte está disponible en la página de SourceForge del proyecto a través de las listas de correo.