Я только что обновил Ubuntu (с 15.04 до 15.10), и теперь у меня странное поведение: всякий раз, когда я блокирую экран (используя любой из Ctrl + Alt + L, Win + L или просто нажимаю «Блокировка» на панели задач меню), подсветка клавиатуры включается, хотя я всегда выключаю ее.
Я понятия не имею, с чего начать расследование. Это не произошло в Ubuntu 15.04, и, похоже, другие люди не сталкивались с этим.
Мой ноутбук Dell Inspiron, если это поможет.
Обновление: позже я понял, что эта проблема возникает всякий раз, когда включается дисплей, что происходит сразу после блокировки экрана из-за ошибки . Итак, это связанные события, но настоящая причина - включение экрана.
hardinfo
пакет, и клавиатура отображается как «AT Translated Set 2 клавиатура» производителем «1». Это помогает вообще? ...Ответы:
Итак, Интернет - действительно удивительная вещь! После долгих исследований и изучения многих ссылок на форумах мне удалось лучше понять проблему, выяснить, какая программа за это ответственна, и, наконец, отключить это поведение навсегда. Я думал, что запишу свои шаги, на случай, если другие люди столкнутся с той же проблемой.
Шаг 1. Мониторинг системы, чтобы узнать, включена ли подсветка клавиатуры
Прежде всего необходимо знать, что текущее состояние подсветки клавиатуры можно проверить, прочитав файл
/sys/devices/platform/dell-laptop/leds/dell\:\:kbd_backlight/brightness
. Итак, мы хотели бы получать уведомления о любых изменениях в этом файле и, в идеале, какой процесс вызвал это изменение.Это можно сделать с помощью fanotify . Я использовал пример программы , представленной на странице руководства, и добавил несколько модификаций *, чтобы я мог отслеживать изменения в файле яркости. Оказывается, что процесс, ответственный за модификацию, был
/usr/lib/upower/upowerd
, который является процессом демона для UPower .Шаг 2. Узнайте, почему UPower включает подсветку (не работает)
Это была самая нечеткая часть расследования, и я до сих пор не могу понять, почему это происходит. Я нашел человека с очень похожей проблемой, но без решения, поэтому я начал искать , смогу ли я просто полностью отключить UPower (и каковы будут последствия), когда я нашел эту ссылку . Оказывается, у UPower есть файл конфигурации! Так-то лучше.
Шаг 3. Остановите UPower от включения подсветки клавиатуры
Наконец, я редактировал вышеупомянутый конфигурационный файл, расположенный по адресу
/etc/dbus-1/system.d/org.freedesktop.UPower.conf
, и изменен<allow>
на<deny>
в следующей строке:Затем я перезапустил dbus
sudo service dbus restart
(использоватьsystemctl restart dbus.service
в Ubuntu 16.04 и более поздних версиях) и приступил к блокировке экрана, чтобы проверить результат и ... Это сработало !! Ну, Сорта. Экран входа в систему не отображался, поэтому я не смог войти в систему и был вынужден перезапустить компьютер. Но тогда все работало отлично!И это все! Мне все еще интересно, что было бы правильным способом сделать это. Если вы знаете, оставьте комментарий, пожалуйста!
* Например, пример программы был настроен только на мониторинг
FAN_OPEN_PERM
иFAN_CLOSE_WRITE
события, но в этом случае это былоFAN_MODIFY
событие.источник
org.freedesktop.UPower.conf
как вы указали, и это сработало. Я думаю, что изменение было применено немедленно.