Xshell 게시판

X display 관련

최종입력: 2009-05-15 17:36 - 넷사랑 | 답글: 2건

 
2009-05-15 01:13 - 전종배

X display 관련

 
안녕하세요.

X manager를 사용해서 리눅스(ubuntu) 서버에 SSH로 접속하여

사용중인 사람인데요.

특정 프로그램을 띄우면 늘 아래와 같은 메세지가 나오며

창이 뜨질 않네요.

_X11TransSocketINETConnect: Can't get address for localhost
error: AX_openwindow: cannot open X display.
: Invalid argument


/etc/hosts 에는 127.0.0.1 localhost 라고 써있습니다.

다른 프로그램들 (예: xclock )은 잘 되는데 유독 이 프로그램만 안되네요.

뭔가 디스플레이 설정에 문제인 거 같은데... 도움 좀 부탁드립니다. (이 프로그램은 설정파일이 없습니다. binary로만 배포가 된 거라서요)

감사합니다



제품명 : Xshell 3.0
2009-05-15 17:32 - 전종배

Re: X display 관련

 
해결했습니다.

export DISPLAY=127.0.0.1:11.0

아마도 제 서버쪽 display 설정 문제인 것 같네요.





2009-05-15 17:36 - 넷사랑

Re: X display 관련

 
안녕하십니까?
넷사랑컴퓨터 기술지원입니다.

에러메시지만으로 보면 해당 응용프로그램이 localhost에 대한 IP 주소를 찾지 못해 발생하는 문제입니다.
SSH의 X11 포워딩 기능을 이용하여 X응용프로그램을 사용할 때 X응용프로그램은 SSH의 암호화된 터널을 이용합니다. 이 암호화된 터널의 입구가 SSH 서버 장비의 로컬포트입니다. 그래서 X응용프로그램도 자신의 출력 장소가 localhost:10과 같이 되는 것입니다.

/etc/hosts 파일에 localhost가 127.0.0.1로 분명히 등록되어 있고 다른 X응용프로그램 실행에도 문제가 없음에도 이와 같이 localhost를 찾지 못한다면 문제의 응용프로그램이 /etc/hosts 파일을 참조하지 않고 바로 DNS 시스템에 의존하는 것 같아 보입니다.

다음 중 어느 하나를 시도해 보시기 바랍니다.

1. 문제의 우분투 장비가 이용하는 DNS 서버에 localhost를 등록하는 방법
2. Xshell을 사용하시는 경우라면 echo $DISPLAY의 결과물에서 localhost 부분만 127.0.0.1로 바꾸어 $DISPLAY 설정을 다시한 후 응용프로그램을 실행합니다.

$echo $DISPLAY
localhost:10.0(10.0은 상황에 따라 달라질 수 있습니다.)
$export DISPLAY=127.0.0.1:10.0

문제를 해결할 수 없어 다시 문의하시고자 한다면 문제의 응용프로그램에 대한 정보를 알려 주시기 바랍니다. 빠른 문제 해결에 도움이 될 것 같습니다.

감사합니다.