Estoy usando Ubuntu 17.10 con Gnome en una computadora portátil Asus.
En la interfaz de Configuración de energía, debajo de la pestaña Energía, hay una opción en la parte inferior para configurar qué hacer en caso de que la batería se agote.
Sin embargo, cuando hago clic en el menú desplegable para establecer esa opción, solo ofrece una opción, que es "no hacer nada":
Actualmente, mi computadora portátil se agotará con una carga de batería de 0, o cerca de ella, y luego se apagará sin advertencias, sin posibilidad de cerrar programas y apagarse con gracia.
Me gustaría recibir una advertencia cuando la batería esté al 10% y, con suerte, algún tiempo para guardar y apagar programas manualmente antes de apagar la computadora. ¿Cómo logro esto?
Editar: Aquí está el contenido de mi /etc/UPower/UPower.conf
archivo:
# Only the system vendor should modify this file, ordinary users
# should not have to change anything.
[UPower]
# Enable the Watts Up Pro device.
#
# The Watts Up Pro contains a generic FTDI USB device without a specific
# vendor and product ID. When we probe for WUP devices, we can cause
# the user to get a perplexing "Device or resource busy" error when
# attempting to use their non-WUP device.
#
# The generic FTDI device is known to also be used on:
#
# - Sparkfun FT232 breakout board
# - Parallax Propeller
#
# default=false
EnableWattsUpPro=false
# Don't poll the kernel for battery level changes.
#
# Some hardware will send us battery level changes through
# events, rather than us having to poll for it. This option
# allows disabling polling for hardware that sends out events.
#
# default=false
NoPollBatteries=false
# Do we ignore the lid state
#
# Some laptops are broken. The lid state is either inverted, or stuck
# on or off. We can't do much to fix these problems, but this is a way
# for users to make the laptop panel vanish, a state that might be used
# by a couple of user-space daemons. On Linux systems, see also
# logind.conf(5).
#
# default=false
IgnoreLid=false
# Policy for warnings and action based on battery levels
#
# Whether battery percentage based policy should be used. The default
# is to use the time left, change to true to use the percentage, which
# should work around broken firmwares. It is also more reliable than
# the time left (frantically saving all your files is going to use more
# battery than letting it rest for example).
# default=true
UsePercentageForPolicy=true
# When UsePercentageForPolicy is true, the levels at which UPower will
# consider the battery low, critical, or take action for the critical
# battery level.
#
# This will also be used for batteries which don't have time information
# such as that of peripherals.
#
# If any value is invalid, or not in descending order, the defaults
# will be used.
#
# Defaults:
# PercentageLow=10
# PercentageCritical=3
# PercentageAction=2
PercentageLow=10
PercentageCritical=3
PercentageAction=2
# When UsePercentageForPolicy is false, the time remaining at which UPower
# will consider the battery low, critical, or take action for the critical
# battery level.
#
# If any value is invalid, or not in descending order, the defaults
# will be used.
#
# Defaults:
# TimeLow=1200
# TimeCritical=300
# TimeAction=120
TimeLow=1200
TimeCritical=300
TimeAction=120
# The action to take when "TimeAction" or "PercentageAction" above has been
# reached for the batteries (UPS or laptop batteries) supplying the computer
#
# Possible values are:
# PowerOff
# Hibernate
# HybridSleep
#
# If HybridSleep isn't available, Hibernate will be used
# If Hibernate isn't available, PowerOff will be used
CriticalPowerAction=HybridSleep
fuente
Respuestas:
Paso 1: verificar
gsettings
Hay dos opciones que puede verificar en la terminal:
Luego, para cambiarlos, use:
Tenga en cuenta que en mi sistema están bien, así que los cambié a lo que eran en primer lugar, por ejemplo.
Paso 2: verificar
upower
La administración de energía de GNOME utiliza
upower
para hacer el trabajo pesado. Para asegurarse de que se está ejecutando y recolectando estadísticas de batería como debería, use:Primero ejecute este comando cuando la computadora portátil esté enchufada. Luego, desenchufe la computadora portátil y ejecute el comando después de un tiempo y asegúrese de que el tiempo restante de la batería se haya reducido adecuadamente.
Último paso: hibernación de bajo nivel
Este es el último paso que se tomaría después de agotar todos los demás pasos. Este paso no requiere Ubuntu o Unity o Gnome o
gsettings
oupower
. Solo requieresystemd
,udev
ycron
que están integrados en casi todas las distribuciones de Linux con o sin GUI (escritorio).De ArchLinux :
Hibernar con poca batería
Si su batería envía eventos
udev
cada vez que se (des) carga en un 1%, puede usar estaudev
regla para hibernar automáticamente el sistema cuando el nivel de la batería es crítico, y así evitar que se pierda todo el trabajo no guardado. Nota: No todas las baterías informan eventos de descarga. Realice la pruebaudevadm monitor --property
con la batería y vea si se informa algún evento. Debe esperar al menos 1% de caída. Si no se informan eventos y/sys/class/power_supply/BAT0/alarm
no es cero, entonces la batería probablemente desencadenará un evento cuandoBAT0/energy_now
caiga por debajo del valor de alarma, y laudev
regla funcionará mientras el porcentaje matemático funcione. Algunas computadoras portátiles tienen una opción para esto deshabilitada en BIOS por defecto.Esta regla se repetirá siempre que se establezca la condición. Como tal, cuando se reanuda la hibernación cuando la batería es crítica, la computadora hiberna directamente. Algunas computadoras portátiles no arrancan más allá de cierto nivel de batería, por lo que la regla podría ajustarse en consecuencia.
Las baterías pueden saltar a un valor inferior en lugar de descargar de forma continua, por lo tanto, un
udev
patrón de cadena coincidente para todas las capacidades0
a través5
se utiliza.Se pueden agregar otras reglas para realizar diferentes acciones según el estado y / o la capacidad de la fuente de alimentación.
Si su sistema no tiene o faltan eventos ACPI, use
cron
con el siguiente script:Pruebas de eventos
Una forma de probar las
udev
reglas es hacer que creen un archivo cuando se ejecutan. Por ejemplo:Esto crea un archivo
/home/example/discharging
cuando el cargador de la computadora portátil está desconectado. Puede probar si la regla funcionó desconectando su computadora portátil y buscando este archivo. Paraudev
pruebas de reglas más avanzadas , vea Udev # Prueba de reglas antes de cargar .Resumen
Hay más pasos para publicar entre el Paso 2 y el "Último paso", pero se publicarán cuando OP revele más detalles después de la prueba. Mientras tanto, el "Último paso" debería reducir más respuestas intermedias, como simplemente informar el porcentaje restante.
fuente
gsettings
parámetros ya estaban establecidos ensuspend
y10
, lo que indicaría que mi sistema no está respetando esas opciones.gsettings
fue el primer paso (fácil) para verificar. He agregadoupower
el siguiente paso a seguir./etc/UPower/UPower.conf
archivo a mi pregunta.clipboard-diff
entre tuUPower.conf
y la versión instalada en mi sistema. Son idénticosgsettings get org.gnome.settings-daemon.plugins.power active
retornotrue
? 2) ¿Tiene una partición de intercambio> cantidad de RAM?¡Aquí hay un guión amigable que armé!
He creado una solución improvisada que comprueba si su computadora portátil está alimentada por CA o batería (CC) ...
Por lo tanto, si está conectado a la alimentación de CA, saldrá y, de lo contrario, continuará comprobando la energía restante de la batería cada 15 segundos hasta que alcance la variable definida
low
o, más bien, el porcentaje ...Ah, y si desea continuar trabajando en la misma terminal que ejecutó este script, simplemente ejecute el script de esta manera:
Sin más preámbulos, aquí está el script:
Este script también se puede encontrar en GitHub, aquí ...
fuente