私はkdeデスクトップ環境を持っています Fn + F3 / F4 ボタンはキーボードの明るさを変更できません。
また、グローバルショートカットメニューでキーボードの明るさを増減するために他のキーを割り当てますが、再び機能しません。
だから私はこのコマンドで輝度レベルを変更しようとします:
echo 3 | Sudo tee /sys/class/leds/asus::kbd_backlight/brightness
キーボードの明るさの変更に成功しました。
しかし、kdeはdbusを使用してキーボードの明るさを変更するため、このコマンドを使用しようとしています( Arch wiki にあります)。
dbus-send --type=method_call --print-reply=literal --system --dest='org.freedesktop.UPower' '/org/freedesktop/UPower/KbdBacklight' 'org.freedesktop.UPower.KbdBacklight.SetBrightness' int32:2
しかし、明るさはまったく変わらず、このエラーが発生しました:
Error org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.UPower.KbdBacklight” on object at path /org/freedesktop/UPower/KbdBacklight
だから私はそのファイルの許可を変更しようとします:
Sudo chmod 666 /sys/class/leds/asus::kbd_backlight/brightness
utしかし、私はキーボードの明るさを変更することはできません Fn + F3 / F4 またはdbusをもう一度。
追加情報:
Fn + F3 または F4 キーの組み合わせはうまく機能し、信号送信がうまくいくことがわかります:
$ xev | sed -n 's/^.*state \([0-9].*\), keycode *\([0-9]\+\) *\(.*\), .*$/keycode \2 = \3, state = \1/p'
keycode 237 = (keysym 0x1008ff06, XF86KbdBrightnessDown), state = 0x10
keycode 237 = (keysym 0x1008ff06, XF86KbdBrightnessDown), state = 0x10
keycode 238 = (keysym 0x1008ff05, XF86KbdBrightnessUp), state = 0x10
keycode 238 = (keysym 0x1008ff05, XF86KbdBrightnessUp), state = 0x10
それでは、どうすればdbusでキーボードの明るさを変更できますか?
前にも言ったように、0.99.8-2
バージョンのupower
パッケージを使用しています。
upower
の最後のアップデートでは、Debian不安定版、Arch Linux、Ubuntu cosmicなどの多くのディストリビューションユーザーがこの問題に遭遇しています。
たとえば、 this 問題はあなたのものに関連し、upower
GitLabページで開きました。
そのリンクによれば、この方法はあなたの問題を解決するはずです(debian sidの私の問題を解決しました):
1. upower
サービスの構成をオーバーライドします。
Sudo systemctl edit upower.service
2.次の行を書き込みます:
[Service]
ProtectKernelTunables=false
3.このコマンドで変更を確認します。
systemctl show upower.service | grep ProtectKernelTunables
この出力が表示される場合は、正しく実行しました。
ProtectKernelTunables=no
ProtectKernelTunables=
パラメーターの詳細については、 このリンク を参照してください。
4.システムを再起動します(upower
およびdbus
サービスを再起動することもできますが、システムを再起動してすべてのサービスを完全に再起動できます)。
5.キーボードのバックライトを確認します。 journalctl | grep -i upowerd
コマンドの出力には、次のようなものは表示されないはずです。
upowerd[2907]: up_kbd_backlight_brightness_read: assertion 'fd >= 0' failed
キーボードのバックライトは次のように変更する必要があります Fn + F3 そして Fn + F4 キーの組み合わせまたはdbusコマンド:
dbus-send --type=method_call --print-reply=literal --system --dest='org.freedesktop.UPower' '/org/freedesktop/UPower/KbdBacklight' 'org.freedesktop.UPower.KbdBacklight.SetBrightness' int32:3