xbindkeys는 누가 시작합니까?


8

컴퓨터를 다시 시작하면 xbindkeys시작되지만 제대로 작동하지 않습니다. 그것을 죽인 다음 수동으로 시작하면 nohup xbindkeys정상적으로 작동합니다. .xsessionrc파일에 넣으면 제대로 작동한다고 생각 합니다. 그러나 부팅 할 때 이미 다른 것이 시작되고 있습니다.

나는 성공하지 않고 재귀 적으로 검색 /etc했다 xbindkeys.


1
네트워크에 컴퓨터가 있습니까?
— horIzoN

당신이 무슨 뜻인지 확실하지. 많은 시스템이 나와 동일한 WiFi 네트워크에 있습니다. 그러나 내가 말하는 시스템의 사용자는 한 명 뿐이며 항상 컴퓨터에 물리적으로 액세스합니다. SSHing 등이 없습니다.
— 에스프레소 파

확인. 파일 공유가 있고 네트워크에 Ubuntu 컴퓨터가있는 경우 사용자와 동시에 파일을 xbindkeys실행하고있을 수 있습니다. 그러나 @Mik의 솔루션이 작동 할 것이라고 확신합니다.
— horIzoN

비슷한 문제가 있습니다. 시작할 때 xbindkeys -s올바른 명령 목록을 표시하지만 모두 작동하지는 않습니다-실행 killal xbindkeys && xbindkeys한 다음 작동합니다. xbindkey가 전혀 작동하지 않습니까? 아니면 일부 명령이 작동합니까?
— Benubird

나는이 똑같은 문제가 있습니다 (마지막 주석 후 2 년 및 15.10). Xbindkeys는 자동으로 시작되지만 내 키는 바인딩되지 않습니다. 내가 그것을 죽이고 다시 시작하면 작동합니다. 시작 스크립트를 just로 바꾸려고했지만 xbindkeys동일한 작업을 수행합니다.
— Lasse Dahl Ebert 2014 년

답변:


7

그 발견 xbindkeys당신이있는 경우 자동으로 시작됩니다 .xbindkeysrc같은 폴더 홈 폴더 또는 시스템에 /etc. 따라서 설치 후 별도의 시작 항목으로 추가하지 않아도되는 이유는 무엇입니까?

이것은 /etc/X11/Xsession.d/98xbindkeysUbuntu 패키지의 일반적인 설치에서 생성되는 파일에 잘 설명되어 있습니다 . 다음은 다음을 실행하여 생성 된 파일의 스 니펫입니다 cat /etc/X11/Xsession.d/98xbindkeys.

This file is sourced by Xsession(5), not executed.

PROG="/usr/bin/xbindkeys"
NOAUTO="${HOME}/.xbindkeys.noauto"

This file autostarts xbindkeysrc if the user (or system) has a config
for it AND does NOT Have a .xbindkeys.noauto in his homedir.

[The rest of the file is a script]

따라서 간단한 해결책은 지침을 기록하고 .xbindkeys.noauto홈 디렉토리에 이름이 지정된 파일을 저장 한 다음 xbindkeysx 세션으로 시작하지 않고 특정 요구에 따라 대체 시작 항목을 배치 할 수 있습니다.


좋아, 나는 이것을 시도 할 것이다. 자동 시작 기능이 실패한 이유가 있습니까? 다른 $ HOME 또는 사용자 또는 무언가를 사용합니까?
— 에스프레소 파

@Espressofa 왜 자동 시작된 것이 실패해야하는지 잘 모르겠습니다. Precise (12.04)에서 작동하는 것으로 보이며 xbindkeysPrecise 및 Quantal에서 동일한 버전입니다.

프로세스가 실행 중이지만 바인딩 된 키를 눌러도 효과가없는 것 같습니다. 으로 시작이야 /usr/bin/xbindkeys /home/MY_USERNAME/.xbindkeysrc- 위치가되는 xbindkeys내 config 파일의. 내가 시작하면 xbindkeys잘 작동합니다.
— 에스프레소 파

좋아, 이제 .xbindkeys.noauto가 있고 예상대로 자동 시작되지 않습니다. 나는 xbindkeys &내 .xsession파일을 넣었다 . 해당 프로세스는 실행 중이지만 작동하지 않습니다. 터미널에서 실행 kill xbindkeys; xbindkeys &하면 작동합니다.
— 에스프레소 파

@Espressofa xbindkeys에 넣지 말고 사용자 시작 항목으로 추가 하십시오 .xsessionrc.

0

HP G60-530US 랩탑에서 터치 패드 켜기 / 끄기 버튼을 작동 시키려고 할 때도 같은 문제가 발생했습니다. xbindkeys 로그인시 xbindkeys 종료 및 xbindkeys 재시작이 작동하는 경우가 있습니다. xbindkeys를 죽이고 xbindkeys-config 'apply, save & exit'를 실행하면 작동했지만 번거로 웠습니다.

gnome-session-properties (gsp)에 이미 'xbindkeys'가 있었으므로 Mik의 제안을 시도하는 것이 효과가없는 것으로 보입니다. 그런 다음 gsp에 명령을 입력하는 것만으로는 작동하지 않는다는 것을 기억했습니다. 대신 '찾아보기'버튼을 클릭하고 / usr / bin / xbindkeys를 탐색하여 키를 설정하십시오. 로그 아웃 및 로그 백 및 마우스 터치 패드 켜기 / 끄기 버튼이 이제 올바르게 작동합니다.

HP G60-530US 특정 :

  1. 관련 비트 ~/.xbindkeysrc(파일의 나머지 부분이 기본값 임) :

    #TouchpadOff - works
    "synclient TouchpadOff=1"
       0x1008ffb1
    
    #TouchpadOn - works
    "synclient TouchpadOff=2"
       0x1008ffb0
    
  2. .xbindkeys.noauto 사용자 홈 프로필에 있습니다.

    ~/.xbindkeys.noauto
    
  3. 사용 가능 /usr/bin/xbindkeys은 gnome-session-properties 시작 애플리케이션 환경 설정을 사용하여 설정되었습니다. 중요한 부분은 나에게 UI의 '찾아보기'버튼을 사용하여 명령을 설정하는 것이 었습니다.

    Name: xbindkeys
    Command: /usr/bin/xbindkeys
    Comments: Touchpad on/off
    

0

xbindkeys가 시작된 것처럼 보이지만 바로 가기가 작동하지 않는 동일한 증상의 문제가있었습니다. 쉘에서 xbindkeys를 수동으로 다시 시작한 후 예상대로 작동했습니다.

내 문제는 바로 가기에 묶인 명령이 내 쉘 구성에 달려 있다는 것입니다 (루비 명령을 시작하려고 시도했지만 루비에는 .zshrc에서 제공되는 asdf 가로 드되었습니다)

솔루션에서 xbindkeys 시작 명령을 대체하는 것이었다 xbindkeys에 /usr/bin/zsh -c "xbindkeys"도에서 자위대 설정을 이동 .zshrc하는 .zshenv후자가 더 TTY가없는 경우에도로드되기 때문에.

시작 명령은 Ubuntu 16.04의 "Startup applications"에서 편집 할 수 있습니다.


-1

시작시 터미널에서 xbindkeys를 실행 하여이 문제를 해결했습니다! .desktop 파일에 Terminal = true를 추가하십시오.


이것은 질문에 대한 답변을 제공하지 않습니다. 작성자의 의견을 비판하거나 설명을 요청하려면 게시물 아래에 댓글을 남겨주세요. 언제든지 자신의 게시물 에 댓글 을 달 수 있으며 평판 이 충분 하면 게시물 에 댓글 을 달 수 있습니다 .
— Volker Siegel 2016 년

@VolkerSiegel 나는 이것이 대답이라고 믿습니다.
— Seth

@VolkerSiegel 그것은 실제로 답변이며 의견이 아닙니다! 지침을 제공했습니다 (시작시 xbindkeys를 여는 .desktop 파일에 터미널 = true 추가, 일반적으로 ~ / .config / autostart 아래에 있음).하지만 문제의 특성으로 인해 xbindkeys의 권한 관련 버그라고 생각합니다. 그것이 모두를 위해 작동하는지 확인하십시오!
— Dimitrios Charalampidis
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.