원격(서버) 측에서 그래픽 렌더링을 수행하여 클라이언트-서버 모드에서 응용 프로그램(ParaView)을 실행하려고 합니다. 저는 서버에 연결하는 방법으로 SSH를 사용하고 있지만 X 전달을 사용하면 렌더링 프로세스가 느려지므로 사용하고 싶지 않습니다.
그러나 서버 디스플레이에서 앱을 열려고 할 때마다 다음과 같은 오류가 발생합니다.
Invalid MIT-MAGIC-COOKIE-1 keyError: cannot open display ':0'
나는 이 문제를 광범위하게 조사했으며 다음 제안된 절차를 시도해 보았으나 아무 소용이 없었습니다.
- 로컬 호스트에 표시된 MIT-MAGIC-COOKIE-1 값을 얻으려면 "xauth list"를 사용하세요.
- SSH를 통해 원격 호스트에 로그인합니다.
- 원격 호스트에서 "export DISPLAY=:0"을 사용합니다.
- 원격 호스트에서 "xauth add"를 사용하여 원격 호스트가 표시하는 쿠키 값을 로컬 호스트의 쿠키 값으로 덮어씁니다.
이것이 올바른 프로세스라고 확신하지만 올바른 쿠키를 올바른 모니터로 전송하지 않을 뿐입니다.
마찬가지로 SSH를 사용하여 원격 컴퓨터의 디스플레이에서 애플리케이션을 열 수 있기를 원합니다. 이상적으로는 전체 프로세스가 xhost가 아닌 xauth를 통해 수행되기를 원하며 다시 X 전달을 사용할 필요가 없습니다. 내가 무엇을 놓쳤거나 잘못했을 수 있습니까?
답변1
노력하다
xhost +local:
달리기 전에.
답변2
이것은 나에게 효과적입니다. 그래서 여기에 답을 남깁니다.
export DISPLAY=:1.0
답변3
사용 중인 값이 DISPLAY
올바르지 않습니다. SSH X 전달을 사용하지 않으려면 DISPLAY
X 서버(프로그램을 표시하려는 데스크탑)의 IP 주소를 표시해야 합니다. 리모콘에서 다음을 실행하세요.
export DISPLAY=desktop:0
desktop
로컬 호스트 이름이나 IP 주소로 바꾸세요 . 원격 IP 연결을 허용하려면 X 서버의 구성을 변경해야 할 수도 있습니다.
답변4
나에게 오류는 다음과 같습니다.
Invalid MIT-MAGIC-COOKIE-1 keyxcb_connection_has_error() returned true
Invalid MIT-MAGIC-COOKIE-1 keyERROR: Unable to create GUI. Exiting
나는 .Xauthority를 사용했지만 xcb_connection 오류 대신 "MIT 쿠키" 부분을 숨기는 것 외에는 아무것도 하지 않았습니다. 결국 @PSN의 답변( )을 사용하여 export DISPLAY=:1.0
작동했습니다 .
fwiw 나는 데비안 9를 사용하고 있습니다.