저는 MacBook Pro를 가지고 있고 키보드의 백라이트 수준을 제어하는 스크립트를 바인딩하고 있습니다. 나는 두 개의 스크립트를 작성했는데 그것들은 훌륭하게 작동하지만 키를 눌러 실행할 수는 없습니다. .xbindkeysrc라는 구성 파일을 사용하여 구성 파일에서 xbindkeys를 설정하고 실행 중입니다. 스크립트를 특수 기능 키(fn과 같은 줄)에 바인딩하려고 합니다. 실행하면 xbindkeys -s
현재 작동하지 않는 두 개의 바인딩 시도가 표시되기 때문에 내 구성 파일이 올바르게 로드되고 있음을 알고 있습니다. 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