-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbatery-mon.sh
More file actions
70 lines (62 loc) · 1.98 KB
/
batery-mon.sh
File metadata and controls
70 lines (62 loc) · 1.98 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#!/bin/bash
#
#############################################################################################
# Monitor de energía para apagado seguro, para laptops o servidores que usen baterias integradas
# y la información sea gestionada por ACPI
#
# Programador: Eidy Estupiñan Varona <eidyev@gmail.com>
# MIT License
#
# Requerimientos de software: ACPI , AWK
# Instalar en Debian, Ubuntu o deribados
# apt install acpi awk
#
# Para usar descargar este archivo y ubicarlo en /srv/batery-mon.sh
# curl https://raw.githubusercontent.com/eidyev/scripts/main/batery-mon.sh -o /srv/batery-mon.sh
# ó
# wget https://raw.githubusercontent.com/eidyev/scripts/main/batery-mon.sh -o /srv/batery-mon.sh
#
# Darle permisos de ejecución
# chmod +x batery-mon.sh
#
# Instalar el chequedo a cada minuto
# crontab -e
#
# # m h dom mon dow command
# */1 * * * * /srv/batery-mon.sh >> /srv/batery.log
#############################################################################################
#Estado de conexión AC
AC=`acpi -a | awk '{print $3}'`
#Porciento de carga de la batería
BATERIA=`acpi -b | awk '{print $4}'`
#Verificar si está conectado a la AC
if [ $AC = "on-line" ]; then
echo "Conectado a AC"
echo `acpi -b`
exit 0
else
if [ $BATERIA = "100%" ]; then
echo "Bateria cargada al 100%"
exit 0
else
# Quitar carcater de porciento
echo $BATERIA > bateria
BATERIA=`cut -c 1-2 bateria`
rm bateria
# Verificación de estado de batería:
if [ $BATERIA -ge 90 ]; then
echo "AC: Desconectada"
echo "Batería: " $BATERIA
# Verificación de estado crítico de bateria
elif [ $BATERIA -le 10 ]; then
echo "AC: Desconectada"
echo "Batería: " $BATERIA
echo "Apagando sistema ..."
#Guardar momento de apagado del sistema
fecha=`date`
echo "Bateria baja, apagando sistema "$fecha >> /srv/apagado.log
#Mandar a apagar al sistema
/sbin/shutdown -h now
fi
fi
fi