Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

사용자를 전환한 후 xterm과 같은 X 응용 프로그램을 실행할 때 다음 오류 메시지가 나타날 수 있습니다.

Code Block
xterm Xt error: Can't open display: 
or 
X connection to localhost:10.0 broken (explicit kill or server shutdown).

SSH 프로토콜을 통해 Xapplication을 사용할 때 확인해야 할 두 가지 중요한 사항이 있습니다. 일반적으로 SSH 서버에 의해 자동으로 구성됩니다. 그러나 다른 사용자로 전환할 때는 사용자가 수동으로 구성해야 하는 경우가 있습니다.

  • DISPLAY 환경 변수

  • 사용자 인증을 위한 쿠키

수동으로 구성하려면 다음 단계를 따르십시오.

  1. 처음 로그인한 사용자의 DISPLAY를 파악하고 기록해 둡니다.

    Code Block
    $ echo $DISPLAY
    localhost:11.0

    localhost 대신 시스템의 호스트 이름이 표시될 수 있습니다. 숫자 '11.0'은 시스템 상태에 따라 다른 숫자일 수 있습니다.

  2. 사용자 홈 디렉토리의 .Xauthority 파일을 /tmp에 복사합니다.

    Code Block
    $ copy ~/.Xauthority /tmp/myXauth
    $ chmod 666 /tmp/myXauth

  3. 원하는 사용자로 전환합니다.

    Code Block
    $ su a_user_you_want_to_switch_to

  4. 위 1단계의 DISPLAY 변수로 DISPLAY를 설정하고 쿠키가 포함된 파일을 지정합니다.

    Code Block
    $ export DISPLAY=localhost:11.0
    $ export XAUTHORITY=/tmp/myXauth

  5. X 응용프로그램을 구동합니다.

    Code Block
    $ xterm &

su 명령을 -m 매개변수와 함께 사용하거나 매개변수 없이 사용하여 이전 사용자 환경을 보존할 수 있습니다. 어떤 시스템에서는 DISPLAY 변수와 쿠키 정보를 보존하지만 어떤 시스템에서는 DISPLAY 변수 혹은 쿠키 정보를 전송하지 않거나 둘 다 전송하지 않습니다.