Как я боролся с регулировкой яркости экрана в Linux

Сентябрь, 26th 2019Рубрика: *NIX 31135
Подписаться на комментарии по RSS

регулировка яркости экрана в Linux

Проблема регулировки яркости экрана в Linux знакома, пожалуй, каждому кто ставил «пингвина» на ноутбук или моноблок. Причём сама установка, как правило, происходит безболезненно, а вот после перезагрузки уже возможны варианты.

Как заставить нормально работать подсветку экрана в Linux покажу на примере дистрибутива Deepin и моноблока Lenovo AIO 330-20AST. Нет особой разницы в том, какой дистрибутив Linux установлен, главное уловить суть проблемы, а решения везде похожи.

Итак, после первой перезагрузки свежеустановленного Deepin Linux вдруг резко снизился уровень яркости экрана, причём ползунок регулировки выставлен на максимальные 100%. Из особенностей моноблока Lenovo AIO 330-20AST можно отметить отсутствие физических клавиш регулировки яркости на клавиатуре (обычно комбинация [Fn]+[клавиша увеличения/уменьшения яркости]). Предполагается, что всё должно работать программно из операционной системы.

Регулировать яркость экрана получалось от уровня "совсем ничего не видно" до "видно с трудом". Понятно, что это какой-то косяк в настройках, осталось его найти.

Уровень яркости подсветки экрана в Linux контролируется с помощью ACPI (Advanced Configuration and Power Interface — усовершенствованный интерфейс конфигурации и управления питанием) модуля ядра для видео или графическим драйвером.

Сам интерфейс управления подсветкой доступен через папку sysfs в /sys/class/backlight. Посмотрим что там находится:

# ls /sys/class/backlight/
acpi_video0

Имя папки зависит от модели видеокарты и их может быть несколько, если она у вас не одна. Так, для видеокарт от Intel она называется intel_backlight, у AMD может встретиться название radeon0. Зачастую, Linux пишет изменения настроек яркости не в тот каталог, например в acpi_video0, когда реально используется intel_backlight. Заглянем внутрь:

# ls /sys/class/backlight/acpi_video0/
actual_brightness  brightness         max_brightness     subsystem/    uevent             
bl_power           device/            power/             type

Значение максимальной яркости содержится в файле max_brightness. Рекомендую сперва заглянуть в данный файл, чтобы определить какое значение следует выставить для работы (обычно оно равняется 15, но в моём случае было 100, от того и максимальная яркость моноблока после перезагрузки составляла лишь 15% от реальной).

# cat /sys/class/backlight/acpi_video0/max_brightness
100

Файл brightness содержит текущее значение яркости (у меня там стояло число 15). До этого уровня Deepin Linux и предлагал мне регулировки из графической оболочки. Текущее значение в данном файле не может быть выше максимальной яркости, установленной в max_brightness. Моя борьба с подсветкой экрана на Lenovo AIO 330-20AST заключалась в изменении всего одного параметра:

sudo tee /sys/class/backlight/acpi_video0/brightness <<< 100

Как я уже упоминал чуть ранее, не редко из-за специфических особенностей конкретного ноутбука или моноблока ACPI не работает должным образом или Linux не правильно определяет чем же нужно управлять. В таком случае следует менять в grub параметр ядра acpi_backlight при загрузке.

Как всегда в Linux возможны различные варианты и дать какой-то универсальный совет сложно — каждый случай уникален по своему. Обычно советуют добавить добавить acpi_backlight=vendor в grub, но это не всегда помагает. Возможны так же значения «video», «native» или «none». После того, как найдёте нужный, можно править загрузчик GRUB на постоянку.

sudo nano /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_backlight=vendor"

В заключение приведу ссылку на неплохой мануал о Backlight https://wiki.archlinux.org/index.php/Backlight_%28Русский%29

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

Если считаете статью полезной,
не ленитесь ставить лайки и делиться с друзьями.

Комментариев: 11

  1. 2019-09-26 в 11:30:44 | ShAN mir

    Статейке 15 летней давности ! Уже давно всё проще !!!!

  2. 2019-09-26 в 12:51:41 | dre@mer]]>avatar]]>

    ShAN mir, правда? Может тогда расскажете как проще стало? А то видимо что-то пропустил...

  3. 2019-09-26 в 14:20:50 | ShAN mir

    Можно же сделать так:

    1. Кликнуть правой кнопкой мыши на панели задач

    2. Выбрать пункт «Добавить апплеты на панель»

    3. В открывшемся окне перейти на вкладку «Загрузка». По слову «brightness» найти апплет «Brightness and gamma applet» и установить его

    4. Перейти на вкладку «Настройка» и внизу нажать «+», чтобы добавить загруженный апплет на панель задач

    5. Кликаете по иконке аппелета, открывается регулировка яркости

  4. 2019-09-26 в 22:33:57 | Sonic Master

    Ну хз у меня на ноуте ASUS норм регулируется

  5. 2019-09-26 в 22:35:44 | Андрей Н

    Как то так...

    sudo add-apt-repository ppa:nrbrtx/sysvinit-backlight
    sudo apt-get update
    sudo apt-get install sysvinit-backlight
  6. 2019-09-26 в 22:40:32 | dre@mer]]>avatar]]>

    ShAN mir, мне кажется вы не поняли сути проблемы. В Deepin Linux ничего добавлять не нужно, тут уже присутсвует регулировка яркости в настройках бокового меню.

    Я же написал, что система не верно устанавливает максимальное значение до которого осуществлять эту регулировку.

  7. 2019-09-27 в 08:03:30 | ShAN mir

    Кто Вам такое сказал? Всё там изменяется, Смотрите внимательнее.

  8. 2019-09-27 в 08:24:45 | dre@mer]]>avatar]]>

    ShAN, да откуда такая уверенность что апплеты есть везде? Например в Deepin, то что вы написали не работает, а решение о котором писал я универсальное и позволяет понять что стало причиной проблемы. Так что старайтесь смотреть не только со своей колокольни.

  9. 2019-09-29 в 15:33:06 | Ярослав Белых

    Sonic Master, плюсую. У меня еще и яркость подсветки клавиатуры нормально регулируется.

    Главное не надо ставить отдельное приложение, как в винде, которое и память жрет, и CPU жрет и в трее вистит, а если упадет, то хана регулировке.

  10. 2019-10-16 в 23:16:50 | Роман Трапезников

    Эх, думал будет про слишком резкое и немного запаздывающую регулировку. Кто-нибудь знает, это просто проблема х11 и в wayland такого нет?

  11. 2022-10-09 в 12:38:51 | Филипп

    У меня почему-то послу ввода команды sudo tee /sys/class/backlight/acpi_video0/brightness

ваш комментарий будет опубликован после проверки
на указанный адрес будет отправлено письмо с кодом активации. Вы можете настроить собственный профиль и стать активным участником или автором.