J'ai accidentellement cliqué sur l'option "Lorsque l'alimentation est extrêmement basse" sous Paramètres système> Alimentation. L'entrée d'origine était vide, mais les deux seules options après avoir cliqué sont Hibernate et Shutdown. Je veux le remettre en suspension.
Il n'y a pas d'option de suspension disponible.
Vous ne pouvez pas suspendre lorsque le niveau de puissance est extrêmement bas. Pour suspendre, vous avez besoin de pouvoir pour enregistrer la session sur RAM, ce qui vous permet de reprendre plus rapidement. Si vous perdez le pouvoir, vous perdez l'état de suspension actuel.
Hibernate copie l’état actuel sur le disque dur, il est plus lent, mais vous pouvez le mettre hors tension.
L'arrêt est évident - vous perdrez toutes les données de la session active et vous aurez une nouvelle session au redémarrage.
Pour rétablir ce paramètre en suspension, utilisez dconf-editor. Accédez à org.gnome.settings-daemon.plugins.power et modifiez l’action critical-battery en suspension.
Vous pouvez également utiliser la commande suivante dans une session de terminal:
gsettings set org.gnome.settings-daemon.plugins.power critical-battery-action 'suspend'
La commande gsettings
est résident par défaut alors que dconf-editor
nécessite une installation via:
Sudo apt-get install dconf-tools
Je n'ai pas assez de représentants pour éditer ou commenter, donc si quelqu'un veut bien, il s'agit d'un commentaire/éditer pour la réponse d'AtomHeartFather.
Vous pouvez également modifier les valeurs pour lesquelles le pourcentage est considéré batterie faible/critique à l'aide de dconf-tools. Dans la même section d'alimentation, modifiez les valeurs suivantes en fonction des pourcentages souhaités.
percentage-action
percentage-critical
percentage-low
Remarque: Une attention particulière est accordée au paramètre percentage-action
qui déclenchera le paramètre critical-battery-action
.
Le 12.04, j’ai utilisé sleepd
pour suspendre la machine lorsque la batterie était faible ou que la machine était inactive.
Bien que sleepd ne soit pas empaqueté pour Ubuntu 14.04 et ait même été orphelin par son développeur, il est possible de le compiler et l’installer .
Installation sur Ubuntu 12.04:
Sudo apt-get install sleepd
Editez le fichier /etc/default/sleepd
et définissez les paramètres suivants:
# -E Do not poll events (since they weren't working for me).
# -c 60 Poll every 60 seconds.
# -u 900 Sleep after 15 minutes idle time when on battery,
# -U 3600 or 60 minutes when on AC power,
# -b 3 or when battery power drops below 3%.
# -H (optional) Use upower instead of ACPI.
PARAMS="-E -c 60 -u 900 -U 3600 -b 3"
Puis redémarrez le démon:
Sudo service sleepd restart
Il existe également des options pour rester éveillé s'il y a une activité réseau, mais celles-ci ont cessé de fonctionner pour moi.
Sur ma machine, apparemment, ACPI ne signalait pas toujours correctement la température. Je devais donc ajouter -H
pour indiquer à sleepd de lire les températures à partir de la source au lieu de ACPI. J'ai découvert les lectures incorrectes, après des dépenses inattendues, en ajoutant -v
et en observant le fichier journal avec tail -f /var/log/*log | grep --line-buffered sleepd
.
(J'avais un étrange bug sur un ordinateur portable avec 12.04 que la machine se réveillerait immédiatement après la suspension, mais seulement si sleepd était suspendue à cause d'une batterie faible, pas à cause d'un temps d'inactivité. J'espère que vous n'aurez pas cette expérience aussi! Le problème ne s'est jamais produit sous 14.04.)
J'ai eu ce problème.
J'étais extrêmement frustré chaque fois que mon ordinateur était en panne d'électricité, alors que je travaillais sérieusement.
J'ai écrit un script pour vérifier l'état de l'alimentation du climatiseur toutes les deux minutes et passer en veille prolongée lorsque l'appareil est mis hors tension. Veuillez modifier en fonction de l'état de votre batterie. Ma batterie peut encore fonctionner pendant deux minutes après une panne de courant.
#!/bin/bash
if [[ $(cat /sys/class/power_supply/AC0/online) == *0* ]] ; then
echo 'On battery power'
#pmi action suspend
dbus-send --system --print-reply \
--dest="org.freedesktop.UPower" \
/org/freedesktop/UPower \
org.freedesktop.UPower.Suspend
#else
# echo 'On Ac Power'
fi
Je mets le script dans un fichier nommé powerMon.sh
et le configure comme un cron job
qui s'exécute toutes les deux minutes.
J'ai écrit un script bash simple qui le fera sur n'importe quel linux ... Ajoutez juste ce script au démarrage ... toutes les deux minutes, le script vérifie l'état de la batterie et suspend sa mise en veille si la batterie est inférieure à 11% ...
#!/bin/sh
flag=0
while [ 1 ]; do
var=$(upower -i /org/freedesktop/UPower/devices/battery_BAT0| grep -E "percentage"| grep -o '[0-9]*')
if [ $var -lt 11 ] && [ $flag -eq 0 ]; then
systemctl suspend
flag=1
Elif [ $var -gt 11 ] && [ $flag -eq 1 ]; then
flag=0
fi
sleep 120
done
Il existe un moyen de désactiver complètement la suspension/mise hors tension.
gsettings set org.gnome.settings-daemon.plugins.power critical-battery-action 'false'
(au cas où il serait très bas même à 100%)