Как сохранить настройки яркости?


15

После того, как я обновил свой ноутбук до Ubuntu 12.04, я обнаружил, что не могу сохранить свои настройки питания. Каждый раз, когда я устанавливал яркость экрана на 70%, в следующий раз он восстанавливался до 100%. Я не могу найти кнопку сохранения на новой панели настроек питания (прошу прощения за то, что не могу опубликовать скриншот прямо сейчас). Может кто-нибудь сказать мне, как сохранить этот параметр? Благодарю.

Ответы:


16

если вы просто хотите изменить и сохранить только яркость экрана, вы можете использовать xbacklight

     sudo apt-get install xbacklight

после установки введите команду, чтобы легко установить яркость экрана

     xbacklight -set `num`

numявляется процент от яркости экрана.

Более простой способ установить яркость и контраст

     sudo setpci -s `00:02.0` F4.B=`XX` 

чтобы установить яркость, 00:02.0это ваш код устройства VGA. XXявляется шестнадцатеричной формой от 00 до FF

используйте lspciкоманду, чтобы узнать код вашего устройства VGA.

     xgamma -gamma `X`

установить контраст Xот 0 до 1


О, сейчас я просто хочу сохранить настройки яркости экрана. Спасибо, Тейфи. :)
Борис

2
Я не могу поверить, что нет GUI для этого. Ubuntu должен быть Linux для людей. Спасибо за чаевые!
Умпирский

Остерегайтесь использования setpci для этого. Для получения дополнительной информации см. Askubuntu.com/questions/66751/…
Стефан Гурихон

19
  1. Проверьте уровни яркости, выполнив эту команду от имени пользователя root:

    cat /sys/class/backlight/acpi_video0/max_brightness 
    

    (у моего ноутбука максимальная яркость 20)

  2. Установите яркость экрана на минимум и проверьте текущий уровень, вызвав следующую команду

    cat /sys/class/backlight/acpi_video0/brightness 
    

    (у моего ноутбука минимальный уровень яркости 0;)

  3. Отредактируйте /etc/rc.localи добавьте перед exit 0 следующей строкой:

    echo YOUR_VALUE > /sys/class/backlight/acpi_video0/brightness
    

Отныне этот уровень яркости будет устанавливаться при каждом запуске компьютера.


Каталог с настройкой яркости может иметь другое имя. В моем случае (ThinkPad T540p, Ubuntu 14.04.3) это: /sys/class/backlight/intel_backlight/.
Пабук

Работает при запуске, но не после спящего режима или приостановки. Ubuntu 16.04
Craicerjack

8

Лично я предпочитаю начинать с яркости, которая была у меня в последний раз, когда я использовал свой компьютер. Вот как я получил эту функциональность:

Сначала создайте файл для хранения яркости экрана между сессиями:

cd /etc/init.d

sudo touch prev_brightness

sudo chmod o + w prev_brightness

Затем создайте скрипт, который сохраняет текущую яркость экрана при выключении в файл, созданный на предыдущем шаге:

sudo touch save_screen_brightness

sudo chmod + x save_screen_brightness

sudo gedit save_screen_brightness

Поместите это в файл, который вы только что открыли:

#! / Bin / ш

cat / sys / class / backlight / acpi_video0 / яркость> /etc/init.d/prev_brightness

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

sudo ln -s /etc/init.d/save_screen_brightness /etc/rc0.d/K99save_screen_brightness

sudo ln -s /etc/init.d/save_screen_brightness /etc/rc6.d/K99save_screen_brightness

Наконец, нам нужно загрузить значение, которое мы сохранили при запуске компьютера:

sudo gedit /etc/rc.local

Поместите это перед выходом 0 в файл, который вы только что открыли:

cat /etc/init.d/prev_brightness> / sys / class / backlight / acpi_video0 / Brightness

Это оно!


Спасибо, решение работало как чудо, хотя перед сохранением предыдущих настроек стоит небольшая пауза.
Весног

3

Используя Ubuntu 12.10, решение, которое дал Хевилат, не сработало для меня. Что бы я ни делал с rc.local, он не запустится.

Я пытался добавить

echo 5 > /sys/class/backlight/acpi_video0/brightness

до этого exit 0и не назывался. Я добавил несколько операторов регистрации /etc/rc.localи /etc/init.d/rc.localничего не запускалось вообще.

Это должно работать, потому что Upstart все еще выполняет старые сценарии System V в подходящее время для обратной совместимости.

Итак, я прочитал о том, как написать сценарий Upstart отсюда .

Я подумал, что, поскольку System V находится на выходе, я должен узнать об Upstart.

Я написал простой скрипт для установки яркости на моих двух мониторах, и он работает без проблем.

Проверьте это здесь .

Все, что вам нужно сделать, это скопировать файл в каталог / etc / init / с помощью sudo. Он должен просто работать, если значение яркости не отображается в неправильном файле, если это простое изменение.

Надеюсь это поможет


1
gksudo gedit /usr/local/bin/brightness_changer.py

Вставьте ниже код,

#!/usr/bin/python

import dbus
bus = dbus.SessionBus()
proxy = bus.get_object('org.gnome.SettingsDaemon',
                       '/org/gnome/SettingsDaemon/Power')
iface = dbus.Interface(proxy, dbus_interface='org.gnome.SettingsDaemon.Power.Screen')
iface.SetPercentage(70)

Сохрани это. Затем выполните команду,

sudo chmod 755 /usr/local/bin/brightness_changer.py

Открытые Startup Applications,

введите описание изображения здесь

Нажмите Добавить,

введите описание изображения здесь

Дайте путь как /usr/local/bin/brightness_changer.pyв команде и сохраните его.

Теперь, когда вы входите, яркость будет установлена ​​на 70.


Я думаю, что ваша программа лучше подходит для Bash, но мне нравится, что вы отвечаете, и мне нравится Python.
Сеперо

@virpara: Я использовал твой скрипт, и он работал. Но это больше не работает с Gnome 3.10. Я не смог найти org.gnome.SettingsDaemon.Power.Screen с помощью dconf. Есть идеи?
Сварненду Бисвас

0

Я использую ПК HP all-in-one. И я не могу заставить xbacklight выполняться в rc.local, причину которого нужно было изучить.

Так что я просто поставил

xbacklight -set 0

Команда в Startup Applications, и это помогает уменьшить яркость экрана после входа в систему.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.