Неможливо змінити яскравість у ноутбуці Lenovo


43

Клавіші регулювання яскравості < Fn+ / > не має ніякого ефекту (хоча вони визнаються навколишнім середовищем), і я не можу змінити яскравість , використовуючи GUI інструментів. Це здається проблемою в самому Linux, а не в середовищі робочого столу.

Я можу змінити яскравість в ОС Windows, тому це не якась помилка обладнання.

Докладніше:
          Lenovo B570 (назва моделі: 20093)
          Інтегрована відеокарта Intel HD
          Kubuntu 11.04 (Linux 2.6.38-10-generic, KDE 4.7.0), все на сьогоднішній день
          Без власних графічних драйверів (лише Wi-Fi)

Що я спробував:

  • Edit /etc/default/grubGRUB_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=XX (без ефекту)
  • xbacklight -set XX(" No outputs have backlight property")

Як я можу виправити це питання?


1
Це було виправлено в Ubuntu 11.10!
Олег Припін

5
Здається, це знову зламано в Ubuntu 12.04.
Mittenchops

А Ubuntu 16.04 ще.
Дієго

Відповіді:


10

Спробуйте це . Він працював для мого 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

Збережи це. Вийдіть і увійдіть назад.


Дякую - Це також працювало на Samsung N220 Netbook з інтегрованою графікою Intel (GMA 3150) під управлінням Xubuntu 15.04 "яскраво"
Ендрю

1
Ні, що вбив мого X. довелося знову видалити файл у консолі відновлення.
букси

Це не спрацювало на Lenovo P500.
Гален

2
Це працювало для мене на Thinkpad T460 з Ubuntu 17.04, я просто повинен був вийти з системи, а потім увійти.
Елліот Гороховський

Для перевірки PCI шини ідентифікаційного прогону lspci -nn. Однак це не спрацювало для мене в Thinkpad E490.
Енріко

38

Якщо інструменти GUI не спрацьовують, спробуйте використовувати для цього термінал .

  1. Відкрийте термінал

  2. Run: ls /sys/class/backlight/*/brightness. Приклад виведення:

    /sys/class/backlight/acpi_video0/brightness
    
  3. Якщо нічого не знайдено, ядро ​​не підтримує контроль яскравості (відсутні драйвери?). В іншому випадку ви можете використовувати команди нижче (замінити acpi_video0відповідно):

    • Отримайте поточний рівень яскравості:

      cat /sys/class/backlight/acpi_video0/brightness
      
    • Отримайте максимальний рівень яскравості:

      cat /sys/class/backlight/acpi_video0/max_brightness
      

    Ці команди повертають рівень яскравості, який становить від нуля до максимальної яскравості (див. Вище).

  4. Щоб змінити рівень яскравості, потрібно записати номер у 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
    

5
Впевнені, що з водіями є якісь проблеми! Якби цей командний рядок працював, GUI також працював. Але, звичайно, це не працює - _
Олег Припін

@Lekensteyn: [не працював, 11.04 Ubuntu використовуючи] - я багато пробував, але не працював у режимі реального часу. Ви мали на увазі при зміні цього, він відображатиметься в прямому ефірі або після перезавантаження?

2
Зміни в режимі реального часу.
Лекенштейн

Навіть як супер користувач я не міг змінити рівень яскравості за допомогою трійника. Чому це могло бути?
Гален

@Galen Якщо ви не помилилися при написанні файлу, це може бути проблемою, характерною для моделі. Спробуйте повідомити про це як про помилку або знайдіть модель свого ноутбука та "підсвічування Linux".
Лекенштейн

10
  1. Встановити 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)
  2. Перезавантажте.

  3. Тепер ви можете використовувати термінал для регулювання яскравості, як і запропонував по Lekensteyn .
    Якщо вам нормально змінити яскравість за допомогою терміналу + sudo, це кінець відповіді.
    Якщо ви перебуваєте на робочому столі GNOME, яскравість може навіть функціонувати вже повноцінно.

  4. Завантажте мій сценарій зміни яскравості , дозвольте його виконати та поставте його в / usr / local / bin / :
    wget -O brightness http://ideone.com/plain/yPlo5
    chmod +x brightness
    sudo mv brightness /usr/local/bin

  5. Ми повинні дозволити редагувати файл яскравості, так що sudoвін не потрібен скрізь.
    Крім того, ми хочемо зробити так, щоб параметр яскравості відновився до попереднього налаштування, коли система завантажується (на жаль, це не збережено, на жаль).

    Згаданий brightnessскрипт може обробляти все це (з restoreпараметром), просто додайте його до автозапуску.
    Для цього ми відредагуємо /etc/rc.local ( sudo nano /etc/rc.localабо будь-який редактор замість nano).
    Перед exit 0рядком додайте наступний рядок:
    /usr/local/bin/brightness restore

  6. Найкраще перезавантажити зараз.

  7. Так brightnessсценарій працює. Ви можете зайти в термінал будь-коли та набрати наступне:

    • brightness - отримати поточну настройку яскравості
    • brightness value- встановити яскравість до значення
    • brightness inc step, - збільшуйте або зменшуйте яскравість поетапно (якщо це не вказано, з конфігураційного файлу використовується значення за замовчуванням, як правило, 10% максимальної яскравості)brightness dec step
  8. Тепер ви, можливо, захочете відобразити зміну яскравості на гарячих клавішах.

    • Встановіть для XF86BrightnessUp значенняbrightness inc
    • Встановіть XF86BrightnessDown наbrightness dec
  9. Якщо ви хочете щось змінити, перегляньте /etc/bx_brightness.conf
    Ви можете змінити крок, завдяки якому яскравість змінюється brightness inc/dec


Дякую Тозу за його безцінну допомогу в цій темі .


1
Це більше не потрібно в Ubuntu 11.10
Олег Припін

4

Я думаю, що я знайшов простий і найменший ефект для існуючих речей для коригування 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.


1
Додано "acpi_backlight = vendor acpi_osi = linux video.brightness_switch_enabled = 1" в параметри ядра грубового завантаження, "Fn + вгору / вниз", щоб змінити швидкість роботи на моєму G360. Не потрібно писати правила Udev, як вище.
Littlebat

Здається, додавання лише одного параметра ядра "acpi_backlight = постачальник" також працює на моєму G360. Але обидва способи додавання параметрів ядра будуть припиняти роботу. Деталь моєї справи дивіться: Bug 44809 - [Arrandale підсвічування] Яскравість через RandR не має ніякого впливу на Sony VAIO VPCYA1V9E: bugs.freedesktop.org/show_bug.cgi?id=44809
littlebat

4

Це не призведе до роботи ваших клавіш 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!


4

У мене є lenovo ideapad z400.

Я спробував усі перераховані вище підказки, успіху не було.

Тому я знайшов інший, який дуже добре працював:

Поставте наступний рядок у / etc / default / grub

GRUB_CMDLINE_LINUX="acpi_backlight=vendor acpi_osi=Linux resume=/dev/sdYY"

YY = Зміна місця обміну, використовуйте swapon -s, щоб побачити ваш телефон.

Виконати оновлення-grub як root

Після перезавантаження проблема була вирішена.


Мені це спрацювало, проте трапилось щось цікаве. Коли яскравість встановлена ​​на максимум, на екрані не з’являється яскравості (повністю темно), будь-які пропозиції? Спасибі
Адріано Ріволлі

2

У мене є Thinkpad T450 з графікою 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

1

Це не працює для користувачів KDE, як написано на https://launchpad.net/~kamalmostafa/+archive/linux-kamal-mjgbacklight

ПРИМІТКИ для користувачів KDE DESKTOP

Користувачі настільних ПК KDE: Цей PPA НЕ може фіксувати гарячі клавіші управління підсвічуванням: для цього виправлення потрібен модуль ядра для подачі нового /sys/class/backlight/intel_backlightінтерфейсу (який буде працювати незалежно від вашого робочого столу), а також модуля настільного ПК для доступу до цього інтерфейсу. Для Gnome оновлений менеджер gnome-power в цьому PPA постачає це, але еквівалент для KDE ще не розроблений ".

Однак ви можете спробувати обхідний шлях знайти тут .

Це говорить про введення терміналу, echo XXX | sudo tee /sys/class/backlight/intel_backlight/brightnessде XXX - ціле число.

У моєму випадку для XXX може бути значення від 0 до 4882, але будьте обережні: якщо ви напишете 0, екран буде повністю чорним, і ви нічого не побачите.


1

Ось патч, який ви можете зробити.

Створіть цей скрипт з ім'ям .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 / яскравість можна редагувати тільки 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, щоб зробити процес графічно.


1

Відредагуйте /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"

Для більш детальної інформації перейдіть за цим посиланням .


1

У мене була така ж проблема, я використовую Gnome3.10 в ubuntu 14.04 (Unity). Я встановив tlp для контролю температури на своєму ноутбуці. Щойно я видалив 'tlp' і перезавантажив систему, і я можу регулювати яскравість екрана за допомогою функції (fn) + клавіш зі стрілками.

Це може допомогти перевірити це один раз.


1

Була така ж проблема (мабуть) з Lenovo IP G50-70. - Насправді жодна з функціональних клавіш "не з'явилася" для роботи. Врешті-решт у біографії я знайшов функцію включення / відключення "гарячої клавіші". Парадоксально, але це було "Увімкнено", але це насправді дозволяє одночасно натискати клавіші для функціональних клавіш. Насправді, якщо ви використовуєте традиційну техніку "Fn + Function keyX", вони не працюють.

Якщо ви відключите функцію гарячої клавіші в біографії, функціональні клавіші працюють "як очікувалося" (Fn + Function Keyx). - Після цього всі функціональні клавіші спрацювали нормально. Стільки прогресу


1

Мені довелося додати ці рядки до grub:

acpi_backlight=vendor acpi_osi=linux thinkpad-acpi.brightness_enable=1

Зауважте, що останній. Саме це змусило працювати клавіші яскравості.


0

Ви можете використовувати цей пакет для вирішення яскравості з командного рядка (терміналу) за допомогою xbacklightкоманди.

xbacklightВстановіть xbacklight можна встановити в Software Center. Або в Терміналі:

sudo apt-get update && sudo apt-get install xbacklight

ви можете використовувати

  • xbacklight -inc <range from 0 to 100> для збільшення яскравості зі значенням < ... >

  • xbacklight -dec <range from 0 to 100> зменшити яскравість зі значенням < ... >


Цей працював для мене за допомогою Thinkpad E490. Дякую!
Енріко

0

У мене виникли проблеми на Thinkpad W510 під керуванням kubuntu 18.04.

Я знайшов це на форумі Lenovo:

tpb - програма для використання спеціальних клавіш IBM ThinkPad (tm)

sudo apt-get install tpb

Вуаля! Клавіші регулювання яскравості зараз працюють ідеально! Мені навіть не потрібно було виходити та повертатися.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.