Come posso impostare il computer per sospendere quando la batteria è quasi scarica?


21

Ho accidentalmente fatto clic sull'opzione "Quando l'alimentazione è molto bassa" in Impostazioni di sistema> Alimentazione. La voce originale era vuota, ma le uniche due opzioni dopo aver fatto clic erano Hibernate e Shutdown. Voglio riportarlo su Suspend.


Quale versione di Ubuntu stai usando?
Anderson Green,

Risposte:


7

Non è disponibile alcuna opzione per la sospensione.

Non è possibile sospendere quando la potenza è molto bassa, per sospendere è necessario disporre di energia per salvare la sessione in RAM consentendo di riprendere più rapidamente, se si perde energia si perde l'attuale stato di sospensione.

Hibernate copia lo stato corrente sul disco rigido, è più lento ma è possibile spegnere l'alimentazione.

L'arresto è evidente: perderai tutti i dati nella sessione attiva e al riavvio avrai una nuova sessione.


7
In un mondo ideale, forse. Mi piacerebbe se potessi configurare la mia macchina per la sospensione quando scende al di sotto del 15% della batteria (abbastanza facilmente per diverse ore in sospensione) perché così com'è, posso solo configurarla per lo spegnimento (che tipo di garanzie perdi dati) o ibernazione (che è completamente rotto sulla mia macchina). Quindi ecco i vincoli inutili ...
Tomislav Nakic-Alfirevic,

2
Sono di fronte allo stesso problema. Era solito sospendere quando la batteria è quasi scarica. Ma come nella domanda, ho accidentalmente fatto clic sull'opzione "Quando l'alimentazione è molto bassa" in Impostazioni di sistema> Alimentazione. La voce originale era vuota ma ora posso solo selezionare "Spegni". Quindi, il mio computer si spegne quando la batteria è quasi scarica. Vorrei farlo sospendere in quel caso. Non so come tornare allo stato originale in cui era sospeso.
Mukesh Chapagain,

1
In Ubuntu 12.04, l'opzione "ibernazione" è disabilitata e il computer si riavvia invece di sospendere quando la batteria è quasi scarica.
Anderson Green,

1
@chapagain Sto affrontando esattamente lo stesso problema. Quale versione di Ubuntu stai usando?
Anderson Green,

1
@AndersonGreen Sto usando Ubuntu 12.04
Mukesh Chapagain il

20

Per modificare questa impostazione per sospenderla, utilizzare dconf-editor. Vai a org.gnome.settings-daemon.plugins.power e modifica l'azione di batteria critica per sospenderla.

In alternativa, in una sessione terminale utilizzare il comando:

gsettings set org.gnome.settings-daemon.plugins.power critical-battery-action 'suspend'

Il gsettingscomando è residente di default mentre dconf-editorrichiede l'installazione tramite:

sudo apt-get install dconf-tools

C'è qualche bug su Launchpad per questo comportamento di sospensione del bianco?
NoBugs,

Non funziona più a partire da GNOME 3.28.2 . Qualcuno ha una soluzione alternativa?
Orschiro,

9

Non ho un rappresentante sufficiente per modificare o commentare, quindi se a qualcuno interessa, questo è un commento / modifica per la risposta di AtomHeartFather.

Puoi anche cambiare i valori per quale percentuale è considerata batteria scarica / critica usando dconf-tools. Nella stessa sezione di potenza, modifica i seguenti valori nelle percentuali desiderate.

percentage-action

percentage-critical

percentage-low

Nota: un'attenzione speciale va percentage-actionall'impostazione che attiverà l' critical-battery-actionimpostazione.


a percentuali di cambiamento, secondo questa risposta, la use-time-for-policyvoce è anche quello di essere cambiato (deselezionata, o impostato su 'false'): gsettings set org.gnome.settings-daemon.plugins.power use-time-for-policy false. Ma questo non sembra funzionare di sicuro su tutti i sistemi / macchine.

1

Ho avuto questo problema

Ero estremamente frustrato ogni volta che il mio computer si oscurava, mentre stavo facendo un lavoro serio.

Ho scritto una sceneggiatura per controllare lo stato di alimentazione A / C ogni due minuti e andare in letargo quando si spegne. Si prega di modificare in base alla salute della batteria. La mia batteria potrebbe funzionare solo per due minuti dopo l'interruzione dell'alimentazione di rete.

#!/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

Ho inserito lo script in un file chiamato powerMon.she impostato come uno cron jobche viene eseguito ogni due minuti.


1

Il 12.04 sleepdsospendevo la macchina quando la batteria era scarica o la macchina era inattiva.

Sebbene sleepd non sia pacchettizzato per Ubuntu 14.04 ed è stato addirittura reso orfano dal suo sviluppatore, è possibile compilarlo e installarlo da soli.

Installazione su Ubuntu 12.04:

sudo apt-get install sleepd

Modifica il file /etc/default/sleepde imposta quanto segue:

# -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"

Quindi riavviare il demone:

sudo service sleepd restart

Ha anche opzioni per rimanere sveglio se c'è attività di rete, ma questi hanno smesso di funzionare per me.

Sul mio computer, a quanto pare ACPI non riportava sempre correttamente la temperatura, quindi dovevo aggiungere -Hper dire a sleepd di leggere le temperature da upower anziché ACPI. Ho scoperto le letture errate, dopo alcuni imprevisti, aggiungendo -ve guardando il file di log con tail -f /var/log/*log | grep --line-buffered sleepd.

(Ho avuto uno strano bug su un laptop con 12.04 che la macchina si sarebbe risvegliata immediatamente dopo la sospensione, ma solo se sleepd fosse sospeso a causa della batteria scarica, non a causa del tempo di inattività. Spero che anche tu non abbia questa esperienza! Il problema non si è mai verificato in 14.04.)


0

C'è un modo per disabilitare completamente la sospensione / spegnimento.

gsettings set org.gnome.settings-daemon.plugins.power critical-battery-action 'false'

(nel caso in cui si sta mostrando in modo critico basso anche al 100%)


0

Ho scritto un semplice script bash che lo farà su qualsiasi Linux ... basta aggiungere questo script all'avvio ... ogni due minuti lo script controlla lo stato della batteria e sospende se la batteria si abbassa dell'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
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.