Comprobación del estado de la batería | Algo de Linux

jueves, 21 de marzo de 2013

Comprobación del estado de la batería

Esta mañana, el compañero Francisco Rodrigo estuvo revisando por qué no estaba funcionando pkgsync en los portátiles, y por lo que pudo ver la cuestión es que pkgsync se ejecuta mendiante anacron y anacron sólo se ejecuta si el portátil está conectado a la corriente eléctrica.

Comentábamos que la cosa estaba bien, porque era preferible tener los portátiles desactualizados a tener los paquetes en un estado inconsistente.

El problema es que los portátiles de los alumnos siempre que se usan (al menos en mi centro) están desconectados de la corriente, con lo que nunca se van a ejecutar las tareas de anacron, y, en particular, nunca van a realizar el pkgsync.

Así que será mejor modificar el sistema para que anacron se ejecute en función del porcentaje de carga de la batería, en  lugar de observar si está conectado a la corriente eléctrica o no. Esto es fácil averiguar haciendo uso de acpi.

Antes de nada, si no tenemos instalado acpi, lo instalamos:

# apt-get install acpi

Una vez instalado, si lo ejecutamos sin parámetros en un terminal, obtendremos el estado de carga de la batería del portátil. Por ejemplo:

root@administrador:/home/enavas# acpi
Battery 0: Discharging, 77%, discharging at zero rate - will never fully discharge.

Haciendo uso de filtros, es muy sencillo obtener el valor del porcentaje. Un ejemplo:

root@administrador:/home/enam0000# acpi | awk '{print $4}'| cut -f1 -d"%"

71