Чому "Режим літака" постійно перемикається на моєму ноутбуці HP в Ubuntu 18.04?


15

У мене конвертований ноутбук HP Spectre x360 і я працюю на Ubuntu 18.04. Кожен раз, коли я повертаю екран вбік або в режимі планшетного ПК та назад, активується режим «Літаки літака». Насправді, коли я завантажуюсь та входжу в систему, мені доведеться вручну вимкнути "Режим літака" та знову ввімкнути Wi-Fi. Я не хочу відключати плагін gnome rfkill так: 'gsettings set org.gnome.settings-daemon.plugins.rfkill active false', тому що я більше не можу використовувати Bluetooth. Крім того, з якихось богозахисних причин, навіть коли я відключаю плагін, оболонка gnome у будь-якому разі вмикає "Режим літака", це означає, що мені потрібно повертати wifi кожного разу, коли я ввійду в систему. Це так дратує, я дійсно сподобалось, куди йде 18.04, але це серйозно порушує весь досвід оболонки гнома.


1
Чи з’явилася проблема з 17.10? У мене той самий ноутбук, і у мене була така ж проблема з Ubuntu 17.04. Що стає гірше в 17.10, це те, що клавіша "режим літака / F12" більше не працює, тому мені потрібно перейти до верхнього правого меню, щоб знову ввімкнути його. У вас однакова проблема?
П’єр-Антуан

Наскільки я можу сказати, правильне встановлення клавішних кодів під час запуску також усуває проблему з тим, що клавіша f12 в режимі літака не працює. Наразі я радісно перемикаю клавішу в режимі літака, оскільки вона нарешті спрацьовує. Мені це стало зрозуміло лише після того, як я вперше почав використовувати оболонку gnome в 17.10, оскільки я ніколи не використовував спіном Gnome.
Ніколас Стоммель

Відповіді:


23

У оболонці gnome "Airplane Mode" автоматично активується під час завантаження для багатьох ноутбуків HP, коли екран нахилений збоку або коли кришка відкривається / закривається. Далі наведено виправлення для ноутбуків HP під управлінням Linux та використанням оболонки gnome. Кейкод 240 визначається як KEY_UNKNOWN (різновид неопераційного ключа) у /usr/include/linux/input-event-codes.h. Також ваш системний журнал більше не підкаже вам визначити коди HP e057 та e058, що може бути надзвичайно дратує.

По-перше, це виправлення за допомогою класичного сценарію init.d SysV, розміщеного в каталозі init.d і відповідно позначеного символом (В основному, ми хочемо, щоб він працював незалежно від рівня запуску на будь-якому, крім зупинки (0) або перезавантаження (6)). По-друге, це системний сервіс, який набагато надійніший і, можливо, присутній з останніми системними змінами, що також працює на Fedora 28 та інших платформах дистрибуції. Зокрема, у Fedora ви знайдете майже повну відсутність скриптів у каталозі /etc/init.d, а також трохи README, що деталізує перехід від SysV до systemd. Перший метод буде працювати, але другий метод набагато більш "привітний у майбутньому", особливо з огляду на те, куди прямує Ubuntu, а також працюватиме дещо менш ... дратівливо. Системні скрипти init насправді досить зручні та повністю реалізовані та використовуються часто в Ubuntu 18.04.

Старий метод SysV:

$ sudo sh -c 'printf "#! / bin / sh \ n / usr / bin / setkeycodes e057 240 e058 240 \ n"> /etc/init.d/hp-keycodes'
$ sudo chmod + x /etc/init.d/hp-keycodes
$ sudo ln -s /etc/init.d/hp-keycodes /etc/rc1.d/K01hp-keycodes
$ sudo ln -s /etc/init.d/hp-keycodes /etc/rc2.d/S01hp-keycodes
$ sudo ln -s /etc/init.d/hp-keycodes /etc/rc3.d/S01hp-keycodes
$ sudo ln -s /etc/init.d/hp-keycodes /etc/rc4.d/S01hp-keycodes
$ sudo ln -s /etc/init.d/hp-keycodes /etc/rc5.d/S01hp-keycodes
$ sudo перезавантаження

Новий рекомендований системний метод:

$ sudo nano /etc/systemd/system/hp-keycodes.service

Вставте наступні рядки або введіть їх у файл:

[Одиниця]
Опис = виправлення HP setkeycodes

[Сервіс]
Тип = onehot
Перезапуск = ні
RemainAfterExit = ні
ExecStart = / usr / bin / setkeycodes e057 240 e058 240

[Встановити]
WantedBy = рятувальний.ціль
WantedBy = багатокористувач
WantedBy = graphical.target

Збережіть та підтвердьте ім'я файлу за допомогою ctrl-x, y.

$ sudo systemctl перезавантаження демонів
$ sudo systemctl включити hp-keycodes.service
$ sudo перезавантаження

І це все, більше не дратуйте дивних речей, коли ви нахиляєте екран або закриваєте / відкриваєте кришку ноутбука!


Це працювало для мого ноутбука HP 15-ac14ne
Tooniis

1
це не спрацювало на ubuntu 17.10
nikhilweee

2
ДЯКУЮ. Це спрацювало на моєму Spectre x360, коли багато інших рішень цього не зробили.
Метт Вест,

1
Працював у режимі літака для входу та обертання екрана в моєму 2015 році 13 "HP Spectre x360.
wakers01

1
Відмінно працює для мого HP Spectre 13-4110 і x360
Hugo

1

З цією ж проблемою я стикаюся з 17.10 на своєму HP Spectre x360. Насправді я стикаюся з проблемами Ніколаса та П'єра-Антуана:

  • Режим літака активується щоразу, коли я входжу або переходжу на режим планшетного ПК;
  • Fn + F12 (клавіша переключення режиму літака) більше не працює.

Щоб швидко переключити wifi, я створив невеликий сценарій:

## Content of ~/scripts/wifi_toggle : ##
    #!/bin/bash
    str=`export LANGUAGE=en_GB ; nmcli r wifi`
    [ "$str" == "enabled" ] && nmcli r wifi off
    [ "$str" == "disabled" ] && nmcli r wifi on

Я рідко використовую bluetooth, тому він обробляє лише wifi, але ви можете легко модифікувати його для роботи з Bluetooth і Wi-Fi.

Все це явна регресія від 17.04, де все працювало бездоганно. Я спробував бета-версію 18.04, але це та ж ситуація, що і з 17.10.

Ніколас, П'єр-Антуан, я наповнюю, як заповнюючи два повідомлення про помилки з цих питань (звіт про випуск). Як ви думаєте, ви могли мати коментар у цих звітах, коли я закінчую звітування? Це допоможе підтвердити статус помилки (постраждало більше одного користувача).

Ура


Щоб позначити звіт про помилку як такий, що впливає на когось, вони повинні натиснути на Does this bug affect you?посилання трохи під назвою помилки.
Чай Т. Рекс

Якщо ви подали помилку, будь ласка, можете опублікувати посилання тут, щоб інші, хто має цю проблему (включаючи мене), могли підписатися на неї?
ec2011

На жаль, наскільки я знаю, це дійсно апаратне обладнання ноутбука HP, яке може бути відсутнім на більшості машин, тому додавання спеціального пункту або скрипта init в офіційний пакет репо може не бути великим рішенням на всі. Це, здається, є проблемою з ядром і оболонкою gnome, сортованими в одне ціле. Я міг би спробувати подати звіт про помилку проти gnome-shell, але вони ненадовго перейшли до кошмару gitlab. Клавіша режиму літака фіксується за допомогою переглянутої відповіді (системний сценарій init).
Микола Стоммель

Антуан, який я намагався, але не працював для мене, чи можете ви допомогти мені на цьому askubuntu.com/q/1146524
ARIF MAHMUD RANA,
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.