루트가 내 x-서버에 액세스할 수 있는 이유는 무엇입니까?

루트가 내 x-서버에 액세스할 수 있는 이유는 무엇입니까?

내 컴퓨터에서 Debian 9.5를 실행하고 있으며 명령을 실행하면 xhost다음과 같은 출력이 표시됩니다.

access control enabled, only authorized clients can connect
SI:localuser:username

따라서 내 이해에 따르면 루트는 x-서버에 액세스할 수 없어야 하지만 루트로 전환하고 su터미널에서 GUI 응용 프로그램을 실행하면 모든 것이 잘 작동합니다.

그렇다면 내 x-서버가 액세스 제어 목록의 항목을 무시하는 이유를 누군가 설명할 수 있습니까?

답변1

su루트로 전환 하면 XAUTHORITY에서 시작한 루트 셸에서 환경 변수를 사용할 수 있습니다 su. 루트는 파일을 읽을 수 있으므로 Xauthority 파일에 액세스할 수 있습니다. 내 시스템에서:

root@host# medit   

정상적으로 시작되지만 지우면 XAUTHORITY오류가 발생합니다.

root@host# XAUTHORITY= medit
No protocol specified

(medit:25388): Gtk-WARNING **: 12:35:31.963: cannot open display: :1

관련 정보