sudo 없이 /usr/bin/Xorg를 실행하는 방법은 무엇입니까?

sudo 없이 /usr/bin/Xorg를 실행하는 방법은 무엇입니까?

이 질문은 /usr/bin/XorgUbuntu 14.04에서 직접 실행하는 것에 관한 것입니다.

Xdummy가 존재한다는 것을 알고 있지만 nvidia GPU에서 더미 드라이버가 제대로 작동하도록 할 수 없으므로 옵션이 아닙니다.

시스템 전체 합계를 복사하여 xorg.conf약간 /usr/lib/xorg/modules수정했습니다. ( ModulePathxorg.conf것도 지정됨)

루트로 다음 명령을 실행하면 문제가 없습니다.

Xorg -noreset +extension GLX +extension RANDR +extension RENDER -logfile ./16.log -config ./xorg.conf :16

그러나 루트가 아닌 사용자로 이 작업을 수행하면(로그 파일 권한은 정상임) 다음 오류가 발생합니다.

(EE) 
Fatal server error:
(EE) xf86OpenConsole: Cannot open virtual console 9 (Permission denied)
(EE) 
(EE) 
Please consult the The X.Org Foundation support 
     at http://wiki.x.org
 for help. 
(EE) Please also check the log file at "./16.log" for additional information.
(EE) 
(EE) Server terminated with error (1). Closing log file.

sudo 없이 Xorg를 실행하도록 도와주실 수 있나요?

답변1

X를 실행할 수 있는 사람을 결정하려면 X를 구성하십시오.

dpkg-reconfigure x11-common

세 가지 옵션이 있습니다: 루트만, 콘솔 사용자만 또는 누구나. 이 항목은 에 있습니다 /etc/X11/Xwrapper.config.


Debian 9 및 Ubuntu 16.04부터는 이 파일이 존재하지 않습니다. 설치 후 xserver-xorg-legacy파일이 다시 나타나고 해당 내용을 다음과 같이 변경해야 합니다.

allowed_users=console

도착하다:

allowed_users=anybody
needs_root_rights=yes

X를 시작할 때 사용되는 가상 터미널도 지정해야 합니다. 그렇지 않으면 오류가 발생할 수 있습니다. 예를 들어:

Xorg :8 vt8

답변2

X는 출력을 위한 모니터와 그래픽 카드뿐만 아니라 입력 장치(마우스 및 키보드)에 대한 액세스가 필요합니다.

루트가 아닌 X에 대해 이를 달성하려면 Xorg에서 그룹을 root변경하고 inputsetgit 비트를 설정한 후 사용자를 그룹에 추가할 수 있습니다 video.

chown root:input /usr/lib/xorg/Xorg
chmod g+s /usr/lib/xorg/Xorg
adduser YOURUSERNAME video

video(대신 및 에 사용자를 추가할 수 있지만 input이는 권장되지 않습니다. 그룹의 사용자는 input다른 사용자의 입력을 모니터링할 수 있습니다. 예를 들어 X의 GUI는 console/tty에 입력된 루트 비밀번호를 모니터링할 수 있습니다.)

관련 정보