Так как обновление от 14,10 до 15,04 моих пользовательских сценариев, которые я раньше устанавливал надлежащий тепловой режим профиля для моего ноутбука, прекратило работать, которому я верю, то, потому что пополудни-utils не отвечают на переключение AC/BAT.
Теперь, если это - новое намеченное поведение системы, куда теперь я должен поместить свой сценарий, чтобы сделать то задание (требуемый, чтобы мой ноутбук работал правильно даже на питании переменным током)?
Хорошо, найденный ответом в Дуге Wiki. Они дают следующее решение:
Существует всего одна вещь systemd, не может сделать (с systemd-204): управление питанием в зависимости от того, работает ли система на AC или батарее. Для заполнения этого разрыва можно создать единственное правило udev, которое запускает скрипт, когда сетевой адаптер включается и отключается:
/etc/udev/rules.d/powersave.rules SUBSYSTEM=="power_supply", ATTR{online}=="0", RUN+="/path/to/your/script true" SUBSYSTEM=="power_supply", ATTR{online}=="1", RUN+="/path/to/your/script false"
Для моего Vaio Sony у меня есть это как моя персональная установка:
/etc/udev/rules.d/99-laptopac.rules
SUBSYSTEM=="power_supply", ATTR{online}=="0", RUN+="/usr/local/bin/sony-thermal.sh true"
SUBSYSTEM=="power_supply", ATTR{online}=="1", RUN+="/usr/local/bin/sony-thermal.sh false"
/usr/local/bin/sony-thermal.sh
#!/bin/sh help() { cat <<EOF $0: SONY laptop thermal profile management This script selects between "performance" and "silent" modes depending on whether laptop runs on AC power or battery power. EOF } set_sony_thermal_profile() { [ ! -d /sys/devices/platform/sony-laptop ] && exit $NA [ ! -f /sys/devices/platform/sony-laptop/thermal_control ] && exit $NA case $1 in performance) printf "Setting SONY thermal control to performace mode." thermal_control=performance ;; silent) printf "Setting SONY thermal control to silent mode." thermal_control=silent ;; *) printf "Setting SONY thermal control to balanced mode." thermal_control=balanced ;; esac echo "$thermal_control" > /sys/devices/platform/sony-laptop/thermal_control && echo Done. || \ echo Failed. } case $1 in true) set_sony_thermal_profile silent ;; false) set_sony_thermal_profile performance ;; help) help ;; *) exit $NA ;; esac exit 0
Это предотвращает ЦП в моем ноутбуке для входа в "регулировку" непрерывно даже при легких условиях загрузки с высокой эффективностью, и пользователь несут потери.
Сценарии питания Ubuntu по умолчанию могут быть инициированы этот путь.
Добавьте файл pm-utils
с этим содержанием
SUBSYSTEM=="power_supply", ATTR{online}=="0", RUN+="/usr/sbin/pm-powersave true"
SUBSYSTEM=="power_supply", ATTR{online}=="1", RUN+="/usr/sbin pm-powersave false"
кому: /etc/udev/rules.d/
И Ubuntu по умолчанию powersave функции будет применена, когда Вы переключитесь от батареи до AC и назад.
Существует проблема, что она не инициирована на начальной загрузке. Для фиксации его добавить
udevadm trigger -s power_supply
кому: /etc/rc.local
прежде exit0
.
С Ubuntu 16.04 другая проблема состоит в том что значения по умолчанию Администратора сети к Управлению питанием прочь. Когда интерфейс поднят, он переопределяет pm-utils
установка.
Это может также быть зафиксировано путем добавления файла 02-powersave
#!/bin/sh
[ "$1" = "wlan0" ] && [ "$2" = "up" ] && udevadm trigger -s power_supply
кому: /etc/NetworkManager/dispatcher.d
.
Примечание: Необходимо заменить wlan0
с Вашим беспроводным интерфейсом, который может быть найден в ifconfig
.