私はMacBook Proを持っており、キーボードのバックライトレベルを制御するスクリプトをバインドしています。私は2つのスクリプトを書きましたが、それらはうまくいきますが、キーを押して実行することはできません。 .xbindkeysrcという名前の設定ファイルを使用して、設定ファイルでxbindkeysを設定して実行しています。スクリプトを特殊機能キー(fnと同じ行)にバインドしようとしています。実行すると、xbindkeys -s
現在機能していない2つのバインディング試行が表示されるため、私の設定ファイルが正しくロードされていることがわかります。 my.xbindkeysrc ファイルの内容です。
###########################
# xbindkeys configuration #
###########################
#
# Version: 0.1.3
#
# If you edit this, do not forget to uncomment any lines that you change.
# The pound(#) symbol may be used anywhere for comments.
#
# A list of keys is in /usr/include/X11/keysym.h and in
# /usr/include/X11/keysymdef.h
# The XK_ is not needed.
#
# List of modifier (on my keyboard):
# Control, Shift, Mod1 (Alt), Mod2 (NumLock),
# Mod3 (CapsLock), Mod4, Mod5 (Scroll).
#
# Another way to specifie a key is to use 'xev' and set the
# keycode with c:nnn or the modifier with m:nnn where nnn is
# the keycode or the state returned by xev
#
# This file is created by xbindkey_config
# The structure is :
# # Remark
# "command"
# m:xxx + c:xxx
# Shift+...
#keystate_numlock = enable
#keystate_scrolllock = enable
#keystate_capslock = enable
"bash /opt/keyLightInc.sh"
m:0x0 + c:238
XF86KbdBrightnessUp
"bash /opt/keyLightDec.sh"
m:0x0 + c:237
XF86KbdBrightnessDown
#
# End of xbindkeys configuration
詳細なオプションから始めました。出力は次のとおりです。
screen 0 for window 259
Start program with fork+exec call
sudo: no tty present and no askpass program specified
答え1
sudoers
ファイルに対応するオプションが設定されている場合は、requiretty
端末でのみsudoを呼び出すことができます。
ファイルsudoers
にそのrequiretty
オプションが設定されていない場合は、どこからでもsudoを呼び出すことができますが、パスワードの入力を求められたら端末が必要です。 「sudo:ttyがなく、Askpassプログラムが指定されていません」というメッセージは、sudoがパスワードを求めるメッセージを表示しようとしましたが失敗したことを意味します。
-A
sudoが別の方法を使用してパスワードの入力を求めるオプションを渡すことができます。 X11 で実行されているため、ssh-askpass
X11 ウィンドウでパスワードの入力を求める OpenSSH と共に配布されるプログラムを使用できます。
sudo -A /usr/bin/ssh-askpass whatever-command-you-need-to-execute-as-root