12.04 я використав 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
щоб сказати сплячому, щоб прочитати температуру від upower замість ACPI. Після несподіваних переходів я виявив неправильні показання, додавши -v
та переглядаючи файл журналуtail -f /var/log/*log | grep --line-buffered sleepd
.
(У мене був дивний помилку на одному ноутбуці з 12.04, що машина знову прокинеться відразу після призупинення, але лише у випадку, якщо сплячий призупинився через низьку батарею, а не через час простою. Сподіваюся, у вас теж не буде такого досвіду! Проблема ніколи не траплялася до 14.04.)