web-dev-qa-db-fra.com

Suspendre lorsque la puissance est très basse 11.10

Y at-il un moyen de suspendre lorsque Ubuntu est à une puissance critique. La seule option dans le paramètre d'alimentation d'Ubuntu 11.10 consiste à arrêter ou à mettre en veille prolongée. Je laisse fonctionner ma batterie jusqu’à ce qu’elle s’arrête, puis je la branche. Elle devient agaçante lorsque mon ordinateur est en veille prolongée à une puissance extrêmement basse.

Merci d'avance pour l'aide

7
Ryan

Vous ne savez pas pourquoi les paramètres d'alimentation n'offrent que l'hibernation ou l'arrêt.
Vous pouvez changer l’option de suspension en utilisant dconf-editor:
Accédez à org-> gnome-> settings-daemon-> plugins-> power, puis modifiez la valeur de critical-battery-action en "suspendre".

4
jpd

Une intuition, mais je crois qu’à une consommation électrique extrêmement basse, le système n’a pas assez de puissance pour maintenir le mode de suspension; oui, le mode de suspension, même s’il consomme peu, consomme de l’énergie pour conserver les données en mémoire vive. Ainsi, même si le système est suspendu, il s'éteindra immédiatement. C'est probablement pourquoi la solution de jpd n'a pas fonctionné.

Pourquoi je crois si? J'ai remarqué qu'après la mise hors tension du système en raison d'une consommation d'électricité extrêmement faible, il est impossible (du moins sur mon ordinateur portable) de l'allumer sans le brancher. Une consommation d'électricité tellement faible doit signifier "ne peut pas continuer" et non "seulement". minutes restantes "ou quelque chose comme ça.

Je pense que ce que vous voulez, c'est que le système soit suspendu lorsqu'il reste environ 10 minutes de batterie. Je ne sais pas comment m'attaquer à ce problème, mais je crois que Unity vous en informe. Dans mon cas, cette notification est suffisante.

2
S Prasanth

Sur ma machine, l'état actuel de la batterie peut être lu à partir de/proc/acpi/battery/BAT1/state

Exemple de contenu de ce fichier:

present:                 yes
capacity state:          ok
charging state:          charging
present rate:            749 mA
remaining capacity:      530 mAh
present voltage:         11200 mV

Vous pouvez localiser le fichier approprié sur votre ordinateur et l’utiliser pour suspendre les opérations lorsque la batterie est à l’état de consommation critique. Le script python suivant le fera pour vous:

#!/usr/bin/python
import os
import time

battery_state_file = "/proc/acpi/battery/BAT1/state"
critically_low_power = 500
suspend_command = "Sudo pm-suspend"

while True:
    time.sleep(1)
    f = open(battery_state_file)
    content = f.read().split('\n')
    f.close()
    if content[2].split()[2] == "discharging":
        if int(content[4].split()[2]) < 500:
            os.system(suspend_command)

Enregistrez ceci dans un fichier (disons) suspendscript, rendez-le exécutable, ajoutez suspendscript & à .xsessionrc dans votre dossier personnel, déconnectez-vous et reconnectez-vous.

Vous devez définir battery_state_file et critically_low_power de manière appropriée. Si la capacité restante tombe en dessous de "critically_low_power", le système est suspendu. Facultatif: Vous pouvez, si vous le souhaitez, utiliser "taux actuel" et "capacité restante" pour rechercher le "temps restant" (= "cap restant"/"taux actuel") et suspendre si le temps restant est inférieur à un certain seuil. .

Remarques:

  1. Ce code devra être modifié si le contenu du fichier statefile n'est pas au même format que l'exemple de contenu donné ci-dessus.
  2. Sudo pm-suspend nécessite que le sudoer donne son mot de passe. Vous devez rendre pm-suspend sudoable sans mot de passe. Voir comment: Comment exécuter des commandes Sudo spécifiques sans mot de passe? . Alternativement, vous pouvez modifier suspend_command simplement pm-suspend et ajouter Sudo suspendscript & à .xsessionrc et rendre suspendscript sudoable sans mot de passe.
  3. Si vous utilisez ce script, vous devez définir 'action critique de puissance faible' sur 'ne rien faire' dans les paramètres de gnome-power-manager.
1
S Prasanth