su 세션을 통해 X-windows 전달

su 세션을 통해 X-windows 전달

X 창을 전달하려고 하는데 세션으로 제한되어 있는 것 같나요?

내가 하고 싶은 것은 .x-applications 를 통해 다른 사용자로서 x-applications 를 호출하는 것입니다 sudo su -.

다른 사용자의 비밀번호를 알고 있다면 이 문제는 쉽게 해결될 것입니다.

ssh -Y user@host
password:  ********
gedit &

그러나 비밀번호 없이 사용자로 실행하는 경우(예: weblogic):

ssh –Y me@host
xauth list

sudo csh (now root)
xauth add (last line of the xauth list above)
gedit &

그러나 다른 사용자가 x 디스플레이에 액세스하도록 허용하는 데 문제가 있습니다.

xauth list
su – weblogic
xauth add (last line of the xauth list above)
gedit (see if gedit launches).

이것은 실패했습니다.

또한 sudo를 통해 다른 사용자에게 직접 이동해 보았습니다.

ssh –Y me@host
xauth list
sudo su – weblogic
xauth add (last line of the xauth list above)
gedit (see if gedit launches).

이것도 실패했습니다.

답변1

문제는 su -TERM을 제외한 모든 환경 변수가 지워져 설정이 손실되는 것일 수 있습니다 DISPLAY. DISPLAY=localhost:10.0예를 들어 gedit 전에 설정해 보세요 .

답변2

xauth add 명령(예: xauth add :15.0)에 대한 응답으로 다음 오류가 표시되는 경우: xauth: file /root/.Xauthority가 종료되지 않습니다. 파일을 터치하세요(/root/.Xauthority를 ​​터치하세요).

답변3

나는 다음과 같은 진술을 사용하고 있습니다.

su -s /bin/bash -c "xauth add $(xauth -f ~/.Xauthority list|tail -1); cd ~; VirtualBox" vbox

VirtualBox를 실행하려는 소프트웨어로 교체하고 vbox를 원하는 ID로 변경하는 것을 잊지 마세요 :)

관련 정보