내 SSH 구성 파일에서 X 전달이 활성화되고 ssh
해당 -X
매개변수를 사용하여 실행됩니다. 아래의 첫 번째 오류가 발생했지만 결국 연결되었습니다.
Failed to add the host to the list of known hosts (/home/myUserName/.ssh/known_hosts)
문제는 여기서부터 시작됩니다. ff와 같은 X 프로그램을 열면 내 컴퓨터로 전달되지 않고 원격 컴퓨터에서 열립니다. 내가 뭔가를 섞었나요? X 출력을 내 로컬 컴퓨터로 어떻게 전달합니까?
두 시스템 모두 X.org Linux 운영 체제가 설치되어 있으며 완벽하게 작동하는 데스크탑 환경을 갖추고 있습니다.
echo $DISPLAY outputs :0
답변1
SSH를 사용하여 X11 응용 프로그램을 연결하고 실행하는데 X11 응용 프로그램이 SSH 연결을 통하지 않고 원격 컴퓨터에 나타나는 경우 세 가지 이유가 있을 수 있습니다.
- 이 애플리케이션은 특정 사용자에 대해 특정 컴퓨터에서 단일 인스턴스만 실행하는 몇 안 되는 애플리케이션 중 하나이며, 다양한 모니터에서 실행되었습니다.
- 로컬 GUI 세션에서 시작된 기존 Screen 또는 Tmux 세션을 연결하고 있습니다. 프로그램은
DISPLAY
환경 변수 값을 기반으로 창을 열 위치를 알고 있습니다. 해당 Screen/Tmux 내에서DISPLAY
환경 변수는 원래 설정된 값을 유지합니다. 기존 세션에 다시 연결할 때 이를 변경해야 합니다.echo $DISPLAY
터미널 멀티플렉서에 연결하기 전에 실행하고 멀티플렉서 내부에 변수를 설정합니다. - 구성 파일(
.profile
, 등) 중 하나.bashrc
에서 뭔가 나쁜 짓을 했습니다 . 즉,DISPLAY
환경 변수를 변경했습니다. 다른 모니터에서 시작된 스크린 멀티플렉서에 연결할 때를 제외하고는 이를 수동으로 설정해서는 안 됩니다DISPLAY
. SSH를 통해 어딘가에 연결하고DISPLAY
설정하지 않은 경우 SSH 연결이 X11 연결을 전달하지 않으며 환경 변수를 수동으로 설정해도 도움이 되지 않습니다.
따라서 가장 해야 할 일은 구성 파일을 확인하고 DISPLAY
환경 변수를 손상시키는 줄을 제거하는 것입니다.