Форум русскоязычного сообщества Ubuntu


За новостями русскоязычного сообщества и Ubuntu в целом можно следить на нашей страничке в Google+

Автор Тема: Управление питанием с systemd  (Прочитано 817 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Pilot6

  • Автор темы
  • Старожил
  • *
  • Сообщений: 11169
    • Просмотр профиля
Управление питанием с systemd
« : 19 Март 2016, 11:19:35 »
Неожиданно обнаружил, что Ubuntu 16.04 не умеет переходить в энергосберегающий режим при переходе на батарею.
Это происходит из-за того, что systemd не умеет определять режим питания. Так что пакет pm-utils просто не работает автоматическии. Руками переключать можно.

Это же относится к 15.04 и 15.10, где тоже systemd.

Я озадачился этим вопросам и сделал простой фикс. Надо через udev получить событие и запустить скрипт.
Добавляем файл /etc/udev/pm-utils.rules с таким содержанием

SUBSYSTEM=="power_supply", ATTR{online}=="0", RUN+="/usr/sbin/pm-powersave true"
SUBSYSTEM=="power_supply", ATTR{online}=="1", RUN+="/usr/sbin pm-powersave false"

Теперь скрипты срабатыают при выдергивании шнура и вставлении его обратно. Вот только при загрузке скрипты не отрабатыаются. Поэтому добавляем

udevadm trigger -s power_supply
в rc.local

В 16.04, а может быть и раньше появилась "проблема" с NetworkManager. Он по дефолту идет с выключенным энергосбережением.
Для некоторых адаптеров и систем это хорошо, так как оно не везде работает хорошо. У меня проблем с этим нет, поэтому исправил это скриптом /etc/NetworkManager/dispatcher.d/02-powersave

#!/bin/sh

[ "$1" = "wlan0" ] && [ "$2" = "up" ] && udevadm trigger -s power_supply

У кого интерфейс не wlan0 надо соответственно заменить.

Я еще сделал более тонкие настройки питания и получил отличный результат на двух ноутах. Но это отдельная тема.
Здесь написал как завести стандартные настройки.
« Последнее редактирование: 19 Март 2016, 11:21:44 от Pilot6 »
Я в личке не консультирую. Вопросы задавайте на форуме.

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 26093
    • Просмотр профиля
Re: Управление питанием с systemd
« Ответ #1 : 19 Март 2016, 15:24:48 »
в rc.local
почему его до сих пор не удалили нафиг…
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн Pilot6

  • Автор темы
  • Старожил
  • *
  • Сообщений: 11169
    • Просмотр профиля
Re: Управление питанием с systemd
« Ответ #2 : 19 Март 2016, 18:19:28 »
AnrDaemon,
Цитировать
почему его до сих пор не удалили нафиг…
Лучше бы сделали, чтобы все работало. А то поменяли шило на мыло, а половина не работает.
И куда теперь положено писать вместо rc.local?

Пользователь решил продолжить мысль 19 Март 2016, 18:28:21:
То есть вместо одной команды в rc.local я должен составить целый раздел с 10 строчками, изучив при это синтаксис? Мудро!
« Последнее редактирование: 19 Март 2016, 18:28:21 от Pilot6 »
Я в личке не консультирую. Вопросы задавайте на форуме.

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 26093
    • Просмотр профиля
Re: Управление питанием с systemd
« Ответ #3 : 19 Март 2016, 19:47:06 »
А в upstart это решается тремя строчками…
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

 

Страница сгенерирована за 0.054 секунд. Запросов: 24.