Невозможно изменить яркость в ноутбуке Lenovo
Клавиши регулировки яркости < Fn + ⇑/⇓> не действуют (хотя они распознаются средой), и я не могу изменить яркость с помощью инструментов GUI. Это кажется проблемой в самом Linux, а не в среде рабочего стола.
Я могу изменить яркость в ОС Windows, так что это не какая-то аппаратная ошибка.
Подробности:
Lenovo B570 (название модели: 20093)
Интегрированная видеокарта Intel HD
Kubuntu 11.04 (Linux 2.6.38-10-generic, KDE 4.7.0), все в курсе
Нет фирменных графических драйверов (только Wi-Fi один)
Что я пробовал:
- редактировать
/etc/default/grub
↦GRUB_CMDLINE_LINUX_DEFAULT
:acpi_osi=Linux
,acpi_backlight=vendor
,nomodeset
, И да, я сделалupdate-grub
- редактировать
/etc/X11/xorg.conf
(нет такого файла, даже послеsudo dpkg-reconfigure xserver-xorg
) - редактировать
/proc/acpi/video/VGA/LCD/brightness
(файл не найден) sudo setpci -s 00:02.0 F4.B=
(нет эффекта)XXxbacklight -set
("XXNo outputs have backlight property
")
Как я могу исправить эту проблему?
15 ответов
Попробуй это. Это работало для моей Ubuntu 14, Lenovo B570, Intel Graphics.
Откройте терминал и создайте следующий файл конфигурации, если он не существует:
sudo touch /usr/share/X11/xorg.conf.d/20-intel.conf
Теперь нам нужно отредактировать этот файл. Вы можете использовать любой редактор, будь то терминальный или графический.
sudo gedit /usr/share/X11/xorg.conf.d/20-intel.conf
Добавьте следующие строки в этот файл:
Section "Device"
Identifier "card0"
Driver "intel"
Option "Backlight" "intel_backlight"
BusID "PCI:0:2:0"
EndSection
Сохрани это. Выйдите и войдите обратно.
Если инструменты GUI не работают, попробуйте использовать терминал для него.
Бежать:
ls /sys/class/backlight/*/brightness
, Пример вывода будет:/sys/class/backlight/acpi_video0/brightness
Если ничего не найдено, ядро не поддерживает управление яркостью (отсутствуют драйверы?). В противном случае вы можете использовать следующие команды (заменить
acpi_video0
соответственно):Получить текущий уровень яркости:
cat /sys/class/backlight/acpi_video0/brightness
Получить максимальный уровень яркости:
cat /sys/class/backlight/acpi_video0/max_brightness
Эти команды возвращают уровни яркости в диапазоне от нуля до максимальной яркости (см. Выше).
Чтобы изменить уровень яркости, вам нужно записать число в
brightness
файл. Это не может быть сделано редактором вродеgedit
, Скажем, вы хотите изменить яркость на 5, вам нужно запустить:echo 5 | sudo tee /sys/class/backlight/acpi_video0/brightness
В качестве альтернативы, если вы просто хотите установить максимальный уровень яркости:
sudo tee /sys/class/backlight/acpi_video0/brightness < /sys/class/backlight/acpi_video0/max_brightness
устанавливать
linux-kamal-mjgbacklight
- патч для ядра Linux.- Проверьте, будет ли это работать для вас:
lsmod | grep ^i915
Что-то вродеi915 331519 3
должен появиться. Если нет вывода, это не будет работать. sudo add-apt-repository ppa:kamalmostafa/linux-kamal-mjgbacklight
- Установить обновления (
sudo apt-get update; sudo apt-get upgrade
)
- Проверьте, будет ли это работать для вас:
Перезагружать.
Теперь вы можете использовать терминал для регулировки яркости, как это предложил Lekensteyn.
Если вы можете изменить яркость с помощью терминала +sudo
это конец ответа.
Если вы работаете на рабочем столе GNOME, яркость может даже полностью функционировать.Загрузите мой сценарий изменения яркости, разрешите его выполнение и поместите в / usr / local / bin /:
wget -O brightness http://ideone.com/plain/yPlo5
chmod +x brightness
sudo mv brightness /usr/local/bin
Мы должны разрешить редактирование файла яркости, чтобы
sudo
не нужен везде
Кроме того, мы хотим, чтобы настройка яркости вернулась к предыдущей настройке при загрузке системы (к сожалению, она не сохраняется по умолчанию).Упомянутый
brightness
скрипт может справиться со всем этим (сrestore
параметр), просто добавьте его в автозапуск.
Для этого мы отредактируем /etc/rc.local (sudo nano /etc/rc.local
или любой редактор вместо нано).
Добавьте следующую строку передexit 0
линия:/usr/local/bin/brightness restore
Лучше всего перезагрузить сейчас.
Итак
brightness
скрипт работает. Вы можете зайти в терминал в любое время и набрать:brightness
- получить текущие настройки яркостиbrightness value
- установить яркость на значениеbrightness inc step
,brightness dec step
- увеличить или уменьшить яркость шаг за шагом (если он не указан, используется значение по умолчанию из файла конфигурации, обычно 10% от максимальной яркости)
Теперь вы можете захотеть отобразить изменение яркости на ваши горячие клавиши.
- Установите XF86BrightnessUp в
brightness inc
- Установите для XF86BrightnessDown значение
brightness dec
- Установите XF86BrightnessUp в
Если вы хотите что-то настроить, обязательно посмотрите на /etc/bx_brightness.conf
Вы можете изменить шаг изменения яркости с помощьюbrightness inc
/dec
У меня есть Lenovo IdeaPad Z400.
Я попробовал все СОВЕТЫ, перечисленные выше, безуспешно.
Поэтому я нашел другой, который работал очень хорошо:
Поместите следующую строку в / etc / default / grub
GRUB_CMDLINE_LINUX="acpi_backlight=vendor acpi_osi=Linux resume=/dev/sdYY"
YY = область подкачки, используйте swapon -s, чтобы увидеть ваше устройство подкачки.
Запустите update-grub от имени пользователя root
После перезагрузки проблема была решена.
Я думаю, что нашел легкий и наименьший эффект в способе существующих вещей для настройки intel_backlight с использованием правил udev.
Я заметил действие "изменить" подсистемы "подсветки", когда я нажимал Fn+Up/Down на моем ноутбуке Lenovo G360 с ядром 3.2. Поэтому я написал правила /etc/udev/rules.d/99-writeintelbacklight.rules
как показано ниже:
ACTION=="change", SUBSYSTEM=="backlight", RUN+="/usr/sbin/writeintelbacklight.sh"
Сделать скрипт оболочки /usr/sbin/writeintelbacklight.sh
содержать:
#!/bin/bash
intelmaxbrightness=`cat /sys/class/backlight/intel_backlight/max_brightness`
acpimaxbrightness=`cat /sys/class/backlight/acpi_video0/max_brightness`
scale=`expr $intelmaxbrightness / $acpimaxbrightness`
acpibrightness=`cat /sys/class/backlight/acpi_video0/brightness`
newintelbrightness=`expr $acpibrightness \* $scale`
curintelbrightness=`cat /sys/class/backlight/intel_backlight/actual_brightness`
if [ "$newintelbrightness" -ne "$curintelbrightness" ]
then
echo $newintelbrightness > /sys/class/backlight/intel_backlight/brightness
fi
exit 0
Конечно, вам нужно сделать sudo chmod +x /usr/sbin/writeintelbacklight.sh
,
Это не приведет к работе ваших клавиш Fn, но вы сможете назначить любую другую клавишу для регулировки яркости.
Я попробовал несколько из этих решений, но у меня ничего не получалось, пока я не нашел эту маленькую индикаторную программу http://codevanrohde.nl/wordpress/?p=128. С его помощью вы можете настроить горячие клавиши для управления яркостью, использовать колесо мыши или выбрать из выпадающего списка на индикаторе. Я заменил "Fn" на "Win+Alt", что очень похоже на мои руки, и теперь я также могу использовать его с внешней клавиатурой!
Чтобы добавить PPA и установить:
sudo add-apt-repository ppa:indicator-brightness/ppa
sudo apt-get update && sudo apt-get install indicator-brightness
Горячие клавиши должны быть назначены:
/opt/extras.ubuntu.com/indicator-brightness/indicator-brightness-adjust --up
а также
/opt/extras.ubuntu.com/indicator-brightness/indicator-brightness-adjust --down
Сноска. Из коробки индикатор родимости распознает 7 уровней яркости в моей системе. Добавляя acpi_backlight=vendor
к линии GRUB_CMDLINE_LINUX_DEFAULT
в /etc/default/grub
это число увеличено до 16!
У меня есть Thinkpad T450s с графикой Nvidia и бинарными драйверами на Ubuntu 14.04. Чтобы заставить работать подсветку, мне пришлось отредактировать файл /etc/X11/xorg.conf, добавив следующую строку в определение устройства intel (xorg.conf-файл создается при установке бинарных драйверов):
Option "Backlight" "intel_backlight"
Полный раздел теперь:
Section "Device"
Identifier "intel"
Driver "intel"
BusID "PCI:0@0:2:0"
Option "Backlight" "intel_backlight"
Option "AccelMethod" "SNA"
EndSection
У меня была такая же проблема, я использую Gnome3.10 в Ubuntu 14.04 ( Unity). Я установил tlp для контроля температуры в моем ноутбуке. Я просто удалил "tlp" и перезагрузил свою систему, и я могу регулировать яркость экрана, используя функцию (fn) + клавиши со стрелками.
Это может помочь проверить это один раз.
Это не работает для пользователей KDE, как написано в https://launchpad.net/~kamalmostafa/+archive/linux-kamal-mjgbacklight
ЗАМЕЧАНИЯ ДЛЯ ПОЛЬЗОВАТЕЛЕЙ KDE DESKTOP
Пользователи рабочего стола KDE: этот PPA НЕ МОЖЕТ исправлять ваши горячие клавиши управления подсветкой: это исправление требует наличия модуля ядра для предоставления нового
/sys/class/backlight/intel_backlight
интерфейс (который будет работать независимо от вашего рабочего стола), а также модуль рабочего стола для доступа к этому интерфейсу. Для Gnome, обновленный gnome-power-manager в этом PPA обеспечивает это, но аналог для KDE еще не разработан ".
Однако вы можете попробовать найти решение, найденное здесь.
Что говорит набрать в терминале echo XXX | sudo tee /sys/class/backlight/intel_backlight/brightness
где XXX - целочисленное значение.
В моем случае XXX может быть значением от 0 до 4882, но будьте осторожны: если вы напишите 0, экран будет полностью черным, и вы ничего не увидите.
Мне пришлось добавить эти строки в Grub:
acpi_backlight=vendor acpi_osi=linux thinkpad-acpi.brightness_enable=1
Обратите внимание, что последний. Это было то, что заставило работать клавиши яркости.
У меня была проблема на Thinkpad W510 под управлением kubuntu 18.04.
Я нашел это на форуме Lenovo:
tpb - программа для использования специальных ключей IBM ThinkPad(tm)
sudo apt-get install tpb
Вуаля! Клавиши регулировки яркости теперь работают отлично! Мне даже не нужно было выходить из системы и обратно.
Изменить /etc/default/grub
файл и добавитьpcie_aspm=force acpi_backlight=vendor
послеGRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
Тогда вся строка будет выглядеть так:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash pcie_aspm=force acpi_backlight=vendor"
Для более подробной информации посетите эту ссылку.
Была такая же проблема (видимо) с Lenovo IP G50-70. - На самом деле, ни одна из функциональных клавиш "не появилась" для работы. В итоге в биосе я обнаружил функцию включения / выключения "горячей клавиши". Как это ни парадоксально, он был "включен", но на самом деле это позволяет нажать одну клавишу для функциональных клавиш. Фактически, если вы используете традиционную технику "Fn + Function keyX", они не работают.
Если вы отключите функцию горячих клавиш в BIOS, то функциональные клавиши будут работать "как положено" (Fn + функциональная клавиша). - После этого все функциональные клавиши работали нормально. Так много для прогресса
Вот патч, который вы можете сделать.
Создайте этот скрипт с именем.modificarBrillo.sh (в моем случае я создал его в своей домашней папке: ~/.modificarBrillo.sh)
#!/bin/bash
if [ -z "$1" ]; then
echo "ERROR: Tiene que introducir un parámetro: \"a\" para aumentar o \"d\" para disminuir"
exit
else
if [ "$1" != "a" ] && [ "$1" != "d" ]; then
echo "ERROR: el parámetro de entrada sólo puede ser o \"a\" para aumentar el brillo o \"d\" para disminuirlo"
exit
fi
fi
MAX_BRILLO=`cat /sys/class/backlight/intel_backlight/max_brightness`
MIN_BRILLO_ABSOLUTO="0"
MIN_BRILLO="100" #el brillo mínimo puede ser 0 pero eso deja la pantalla completamente a oscuras
INTERVALO=`expr $MAX_BRILLO - $MIN_BRILLO_ABSOLUTO`
INTERVALO=`expr $INTERVALO / 10`
brillo=`cat /sys/class/backlight/intel_backlight/actual_brightness`
if [ "$1" = "a" ]; then
let "brillo = brillo + INTERVALO"
if [ "$brillo" -gt "$MAX_BRILLO" ]; then
let "brillo = MAX_BRILLO"
fi
else
let "brillo = brillo - INTERVALO"
if [ "$brillo" -lt "$MIN_BRILLO" ]; then
let "brillo = MIN_BRILLO"
fi
fi
echo "$brillo" | tee /sys/class/backlight/intel_backlight/brightness
Однако, поскольку предыдущий сценарий требует разрешения на выполнение, и /sys/class/backlight/intel_backlight/bright может редактироваться только пользователем root, и вы должны выполнить его в терминале:
chmod a+x ~/.modificarBrillo.sh
sudo chmod a+w /sys/class/backlight/intel_backlight/brightness`
Последняя команда должна выполняться при каждом запуске, так как права доступа к файлу яркости обновляются при запуске. Для этого sudo vim /etc/rc.local
и добавь команду sudo chmod a+w /sys/class/backlight/intel_backlight/brightness
перед строкой "выход 0"
Наконец, вы должны установить xbindkeys, чтобы назначить функциональную клавишу для выполнения скрипта.
В моем случае я добавляю строки в файл конфигурации ~/.xbindkeysrc
#Aumentar brillo
"/home/alvaro/.modificarBrillo.sh a"
m:0x0 + c:233
XF86MonBrightnessUp
#Disminuir brillo
"/home/alvaro/.modificarBrillo.sh d"
XF86MonBrightnessDown
Но вы также можете установить программу xbindkeys-config для графического выполнения процесса.
light
by haikarainen работал у меня на Xubuntu 19.10 с Thinkpad x390
С его помощью вы можете регулировать яркость с помощью
light -A 5 # Increase brightness by 5%
light -U 5 # Decrease brightness by 5%
Вы можете использовать этот пакет для работы с яркостью из командной строки (терминала), с xbacklight
команда.
xbacklight может быть установлен в Центре программного обеспечения. Или в Терминале:
sudo apt-get update && sudo apt-get install xbacklight
ты можешь использовать
xbacklight -inc <range from 0 to 100>
увеличить яркость со значением< ... >
xbacklight -dec <range from 0 to 100>
уменьшить яркость со значением< ... >