Как настроить компьютер на зависание при критически низком заряде батареи?

Я случайно нажал на опцию «Когда мощность критически мала» в Системных настройках> Питание. Первоначальная запись была пустой, но после щелчка я выбрал только два варианта: Hibernate и Shutdown. Я хочу вернуть его в режим ожидания.

21
задан 30 July 2012 в 15:28

7 ответов

У меня недостаточно представителей, чтобы редактировать или комментировать, так что если кому-то захочется, это комментарий / редактирование для ответа AtomHeartFather.

Вы также можете изменить значения того, какой процент считается низким / критическим аккумулятором, используя dconf-tools. В той же секции мощности измените следующие значения до желаемого процента.

percentage-action

percentage-critical

percentage-low

Примечание. Особое внимание уделяется настройке percentage-action, которая активирует настройку critical-battery-action.

0
ответ дан 30 July 2012 в 15:28

Нет возможности приостановить доступ.

Вы не можете приостановить работу, когда питание критически низкое, чтобы приостановить, вам нужно питание, чтобы сохранить сеанс в ОЗУ, позволяя вам возобновить работу быстрее, если вы теряете энергию, вы теряете текущее состояние приостановки.

Hibernate копирует текущее состояние на жесткий диск, он медленнее, но вы можете отключить питание.

Завершение работы очевидно - вы потеряете все данные в активном сеансе и будете иметь новый сеанс при перезапуске.

0
ответ дан 30 July 2012 в 15:28

У меня была эта проблема.

Я был крайне разочарован, когда мой компьютер отключался, когда я выполнял серьезную работу.

Я написал скрипт для проверки состояния питания кондиционера каждые две минуты и перехода в спящий режим при отключении питания. Пожалуйста, измените в зависимости от состояния вашей батареи. Моя батарея может работать только в течение двух минут после отключения питания от сети.

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

Я поместил скрипт в файл с именем powerMon.sh и настроил его как cron job, который запускается каждые две минуты.

0
ответ дан 30 July 2012 в 15:28

Чтобы изменить эту настройку обратно на приостановку, используйте dconf-editor. Перейдите на страницу org.gnome.settings-daemon.plugins.power и измените действие критического аккумулятора для приостановки.

В качестве альтернативы, в сеансе терминала используйте команду:

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

Команда gsettings является резидентной по умолчанию, тогда как dconf-editor требует установки через:

sudo apt-get install dconf-tools
0
ответ дан 30 July 2012 в 15:28

Я написал простой скрипт bash, который будет делать это на любом Linux ... просто добавьте этот скрипт в автозагрузку ... каждые две минуты скрипт проверяет состояние батареи и приостанавливает работу, если батарея опускается ниже 11% .... 111]

#!/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
0
ответ дан 30 July 2012 в 15:28

На 12,04 я использовал sleepd для приостановки машины, когда батарея была низкой или машина была неактивна.

Хотя sleepd не упаковывается для Ubuntu 14.04 и даже был осиротевшим ее разработчиком, возможно скомпилировать и установить его самостоятельно.

Установка на Ubuntu 12.04:

sudo apt-get install sleepd

Отредактируйте файл /etc/default/sleepd и набор следующее:

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

Затем перезапустите демона:

sudo service sleepd restart

Это также имеет опции бодрствовать, если существует сетевая активность, но они прекратили работать на меня.

На моей машине по-видимому, ACPI не всегда сообщал о температуре правильно, таким образом, я должен был добавить -H сказать sleepd читать температуры из upower вместо ACPI. Я обнаружил неправильные чтения, после некоторого неожиданного syspends, путем добавления -v и наблюдение файла журнала с tail -f /var/log/*log | grep --line-buffered sleepd.

(У меня была странная ошибка на одном ноутбуке с 12,04, который машина разбудит снова сразу после приостановки, но только если sleepd приостанавливал из-за низкого уровня заряда, не из-за времени простоя. Я надеюсь, что у Вас не будет того опыта также! Проблемы никогда не происходило под 14,04.)

1
ответ дан 30 July 2012 в 15:28

Есть способ полностью отключить подвеску / отключение питания.

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

(в случае, если он показывает критически низкий уровень даже при 100%)

0
ответ дан 30 July 2012 в 15:28

Другие вопросы по тегам:

Похожие вопросы: