2개의 가상 머신이 있는데 하나는 CentOS 7을 실행하고 다른 하나는 CentOS 6.5를 실행합니다. CentOS 6.5 가상 머신에서 애플리케이션을 실행하고 7 가상 머신에 표시하고 싶습니다.
ssh -X
(또는 )을 사용할 수 없습니다 -Y
. 사용해야 xeyes -display host:displaynumber
하지만 지금은 작동하게 할 수 없습니다.
6.5VM에서 시도한 것은 다음과 같습니다.xeyes -display 192.168.1.20:0
다음 메시지가 나타납니다.
No protocol specified
Error: Can't open display: 192.168.1.20:0
그러나 ssh -X 192.168.1.20
(6.5VM에서) 그렇게 하면 xeyes
제대로 작동합니다.바르게7VM에 성공적으로 연결되고 xeyes 응용 프로그램이 6.5VM에 표시된다는 뜻이므로 호스트 이름 문제는 아닌 것 같습니다. 그 반대의 경우(예: xeyes를 시작하기 위해 7VM에서 6.5VM으로 ssh)도 잘 작동합니다.
echo $DISPLAY
:0
두 기계 모두에 제공됩니다. X11Forwarding yes
/etc/ssh/sshd_config에 추가했습니다 . ( AllowTcpForwarding yes
도)
잊어버린 내용이 있으면 언제든지 추가 정보를 문의해 주세요. 저는 초보자라 몇몇 간단한 내용을 잊어버렸을 수도 있습니다.
답변을 보내주셔서 미리 감사드립니다!
답변1
부분 답변:
X 서버는 Unix 도메인 소켓(로컬 연결용)과 TCP 포트(6000 + 디스플레이 번호)를 수신할 수 있습니다. 후자는 최신 서버에서 기본적으로 비활성화되어 있으므로 연결할 수 없습니다.
따라서 연결하려는 서버(7번째 VM)에서 ps axu | grep X
비슷한 작업을 수행한 다음 X 서버를 시작하는 명령줄을 살펴보세요. -nolisten
또는 이 있는 경우 -nolisten tcp
이를 제거하고 를 추가해야 합니다 -listen tcp
.
X 서버를 시작하는 방법에는 여러 가지가 있습니다. 귀하의 시스템에서 어떤 방법을 사용하는지 모르겠습니다. 따라서 X 프로세스의 상위 프로세스 ID(PPID)를 보고 몇 번 더 ps
호출하여 알아낼 수 있는지 확인하십시오. 디스플레이 관리자(예: gdm 또는 kdm)일 수도 있고 시스템일 수도 있습니다. 무엇을 시작하든 이러한 명령줄 옵션을 구성해야 합니다.
서버가 포트 6000에서 올바르게 수신 대기 중인 경우 다음 단계는 방화벽 규칙(iptables)을 확인하는 것입니다.