
@terdon의 답변과 관련하여 편집되었습니다.
내 우분투 컴퓨터에서:
를 통해 서버를 연결하면 ssh -X my_server
프로그램을 시작할 수 있습니다.
그런 다음 sudo -i
루트가 되었지만 동일한 프로그램을 시작할 수 없습니다.
오류:
잘못된 인증으로 인해 X11 연결이 거부되었습니다. qt.qpa.xcb: localhost:18.0을 표시하기 위해 연결할 수 없습니다. qt.qpa.plugin: Qt 플랫폼 플러그인 "xcb"를 찾았음에도 불구하고 ""에서 로드할 수 없습니다. Qt 플랫폼 플러그인을 초기화할 수 없어 이 애플리케이션을 시작하지 못했습니다. 응용 프로그램을 다시 설치하면 이 문제가 해결될 수 있습니다.
사용 가능한 플랫폼 플러그인은 eglfs, linuxfb, Minimal, Minimalegl, Offscreen, vnc, xcb입니다.
중단됨(코어 덤프)
나는윈도우 VM~와 함께MobaXterm. X 서버가 사용하는 주소를 보여줍니다.
위와 동일하게 수행하면 동일한 문제가 발생합니다. 하지만 입력할 수 있고 export DISPLAY=172.30.4.66:0.0
작동합니다.
echo $DISPLAY
그런 다음 입력한 주소를 알려줍니다.
내 우분투 컴퓨터에서 이 주소를 어떻게 얻을 수 있나요?
입력 echo $DISPLAY
하면 :0
. 그리고 export DISPLAY=<my ip>:0
작동하지 않습니다.
"x11-xserver-utils"가 설치되지 않았습니다(있음xhost 없음).
답변1
첫째, 전혀 필요하지 않습니다 sudo su
. 하나의 프로그램으로 충분할 때 왜 2개의 프로그램을 사용합니까? 그냥 실행하세요 sudo -i
. 둘째, 이것이 왜 필요한가요? 프로그램을 루트로 실행하려면 sudo programName
. 다음으로 이것은 IP를 얻는 것에 관한 것이 아닙니다(그리고 IP를 난독화하는 것은 의미가 없습니다. 172.30.4.66은 홈 네트워크의 내부 주소이며 공용 IP가 아닙니다). 접근을 허용합니다.
루트가 X 세션에서 그래픽 프로그램을 시작할 수 있도록 하려면 xhost +
모든 사용자의 액세스를 허용하도록 실행해야 합니다. 그러니 그냥 실행 xhost +
한 다음 실행해 보세요. 그래도 문제가 해결되지 않으면 출력으로 질문을 업데이트하세요.