一般ユーザーがラップトップのキーボードバックライトをオンまたはオフにしたいので、これをしました/usr/bin/brightnessctl
。
visudo -f /etc/sudoers.d/grove
(grove
は私のユーザー名ですが、ここで重要なのはファイルがに含まれているということです/etc/sudoers
)
ファイルにはすでに次の行が含まれています。
grove ALL=(ALL) NOPASSWD: /usr/bin/light -A 5
grove ALL=(ALL) NOPASSWD: /usr/bin/light -U 5
それで、まさに真似して追加してみました。
grove ALL=(ALL) NOPASSWD: /usr/bin/brightnessctl -d tpacpi::kbd_backlight s 2
grove ALL=(ALL) NOPASSWD: /usr/bin/brightnessctl -d tpacpi::kbd_backlight s 0
ただし、visudo
レポートを構文エラーにします。
/etc/sudoers.d/grove:3:59: syntaksfejl
grove ALL=(ALL) NOPASSWD: /usr/bin/brightnessctl -d tpacpi::kbd_backlight s 2
^~
/etc/sudoers.d/grove:4:59: syntaksfejl
grove ALL=(ALL) NOPASSWD: /usr/bin/brightnessctl -d tpacpi::kbd_backlight s 0
^~
(syntaksfejl
デンマーク語ですsyntax error
。すべてがデンマーク語で話すように設定しました。そう、小さなテキストに対して英語エラーが発生するようにLANG
再実行する理由はありません。)LANG=C
ここに問題がありますか?コロン(そして表示が間違っています。これは後ろのTABによって引き起こされる可能性がありますgrove
)。では、コマンドをどのように受け入れますか?私が/usr/bin/brightnessctl
物事に対してより多くの統制権を持っていることを許可し受け入れるべきですか?
(重要な場合はDebian 12を使用しています)
答え1
@steeldriverがコメントで指摘しました。sudoers マニュアルの「エイリアス」セクションコロンをaにエスケープする必要があり、動作すると\
言います。
私は愚かなドキュメントを読んでいない私の方法を引用しようと無駄にしようとしましたが、一般的に同じ効果を得ることができたが、私が言ったように動作します\
。