web-dev-qa-db-ja.com

Ubuntu 18.04のHPラップトップで「機内モード」が切り替わるのはなぜですか?

HP Spectre x360コンバーチブルラップトップを使用しており、Ubuntu 18.04を実行しています。画面を横向きにしたり、タブレットモードにしたり元に戻したりするたびに、「機内モード」が有効になります。実際、起動してログインするとき、「飛行機モード」を手動でオフにし、Wi-Fiをオンに戻す必要があります。次のようにgnome rfkillプラグインを無効にしたくありません。「gsettings set org.gnome.settings-daemon.plugins.rfkill active false」は、Bluetoothを使用できなくなったためです。また、何らかの理由でプラグインを無効にした場合でも、gnomeシェルは「飛行機モード」をオンにします。つまり、ログインするたびにWi-Fiをオンにする必要があります。これは非常に面倒です。 18.04が予定されていた場所が好きでしたが、これはgnome Shellのエクスペリエンス全体を真剣に破壊しています。

13

Gnomeシェルでは、多くのHPラップトップの起動時、画面が横に傾いているとき、またはふたを開閉したときに「飛行機モード」が自動的にアクティブになります。以下は、Linuxを実行し、gnomeシェルを使用するHPラップトップの修正です。キーコード240は、/ usr/include/linux/input-event-codes.hでKEY_UNKNOWN(no-opキーの一種)として定義されています。また、syslogはHP e057およびe058コードを定義するようにプロンプ​​トを表示しなくなります。これは非常に面倒です。

1つ目は、init.dディレクトリに配置され、それに応じてシンボリックリンクされる従来のSysV initスクリプトを使用した修正です(基本的に、停止(0)または再起動(6)以外のランレベルに関係なく実行するようにします)。 2番目は、はるかに信頼性の高いsystemdサービスです。おそらく最近のsystemdの変更に伴い、Fedora 28やその他のディストリビューションプラットフォームでも動作します。特にFedoraでは、SysVからsystemdへの移行の詳細を説明する小さなREADMEとともに、/ etc/init.dディレクトリにスクリプトがほとんど完全に存在しないことがわかります。最初の方法は機能しますが、2番目の方法は、特にUbuntuがどこに向かっているのかを考えると、はるかに「未来にやさしい」ものであり、少し面倒な方法でも機能します。 Systemd 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 reboot 

新しい推奨されるシステム化された方法:

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

次の行を貼り付けるか、ファイルに入力します。

 [Unit] 
 Description = HP setkeycodes fix 
 
 [Service] 
 Type = oneshot 
 Restart = no 
 RemainAfterExit = no 
 ExecStart =/usr/bin/setkeycodes e057 240 e058 240 
 
 [インストール] 
 WantedBy = rescue.target 
 WantedBy = multi-user.target 
 WantedBy = graphical.target 

Ctrl-x、yでファイル名を保存して確認します。

 $ Sudo systemctl daemon-reload 
 $ Sudo systemctl enable hp-keycodes.service 
 $ Sudo reboot 

それだけです。画面を傾けたり、ラップトップのふたを閉じたり開いたりしても、もう面倒なことはありません。

18

HP Spectre x360の17.10でも同じ問題に直面しています。実際、ニコラスとピエール・アントワーヌの両方の問題に直面しています。

  • ログインまたはタブレットモードに切り替えるたびに、機内モードがアクティブになります。
  • 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とwifiの両方を処理するように簡単に変更できます。

これはすべて、17.04からの明らかな回帰であり、すべてが問題なく機能していました。 18.04ベータ版を試しましたが、17.10と同じ状況です。

ニコラス、ピエール・アントワーヌ、私はこれらの問題に関する2つのバグレポートを埋めるように記入します(問題ごとのレポートで)。私が報告をするたびに、これらの報告書にコメントを入れることができると思いますか?これは、バグのステータスの確認に役立ちます(複数のユーザーが影響を受けます)。

乾杯

1
Antoine