DISPLAY=:0이란 무엇입니까? [복사]

DISPLAY=:0이란 무엇입니까? [복사]

그것은 무엇 DISPLAY=:0이며 무엇을 의미합니까?

그건 명령이 아니죠? ( gnome-panel명령입니다.)

DISPLAY=:0 gnome-panel

답변1

DISPLAY=:0 gnome-panelgnome-panelDISPLAY로 설정된 환경 변수를 사용하여 외부 명령을 실행하는 쉘 명령입니다 :0. 쉘 구문은 지정된 명령 기간 동안에만 환경 변수를 설정합니다. 대략 동일합니다.VARIABLE=VALUE COMMANDVARIABLE(export VARIABLE=VALUE; exec COMMAND)

환경 변수는 DISPLAYGUI 프로그램에 GUI와 통신하는 방법을 알려줍니다. Unix 시스템은 여러 개를 실행할 수 있습니다X 서버, 즉 다중 디스플레이입니다. 이러한 모니터는 물리적 모니터(하나 이상의 모니터), 원격 모니터(예: SSH를 통해 네트워크를 통해 전달) 또는 가상 모니터(예:wxya기다리다. 디스플레이를 지정하는 기본 구문은 이 부분이 생략되면 로컬 디스플레이입니다.HOST:NUMBERHOST

:0모니터는 시작되는 첫 번째 로컬 모니터와 마찬가지로 0부터 시작하여 번호가 매겨집니다 . 일반적인 설정에서는 이것이 컴퓨터 모니터에 표시됩니다.

모든 환경 변수와 마찬가지로 DISPLAY상위 프로세스에서 하위 프로세스로 상속됩니다. 예를 들어, GUI 세션에 로그인하면 로그인 관리자나 세션 시작 관리자가 이를 DISPLAY적절하게 설정하고 해당 변수는 세션의 모든 프로그램에 상속됩니다. X 전달을 사용하여 SSH 연결을 열면 SSH는 DISPLAY원격 컴퓨터에서 실행하는 프로그램이 로컬 컴퓨터에 나타나도록 환경 변수를 전달된 연결로 설정합니다. 전달된 X 연결이 없는 경우(SSH가 그렇게 하지 않도록 구성되었거나 로컬 X 서버가 없기 때문에) SSH는 설정되지 않습니다 DISPLAY.

명시적 설정으로 DISPLAY인해 프로그램이 일반적으로 표시되지 않는 위치에 표시됩니다. 예를 들어, DISPLAY=:0 gnome-panelSSH 연결을 통해 실행하면 원격 컴퓨터의 로컬 모니터에 Gnome 패널이 시작됩니다(Gnome 패널이 있고 사용자가 이에 액세스할 수 있다고 가정). 명시적 설정은 DISPLAY=:0일반적으로 원격 액세스나 cron 작업 등을 통해 로컬 세션 외부에서 컴퓨터의 로컬 디스플레이에 액세스하는 방법입니다.

답변2

이는 환경 변수이며 전체 셸이 아닌 해당 프로그램에만 전달됩니다. 이는 명령과 같은 줄에 변수를 설정할 때 발생합니다.

X11 프로그램은 클라이언트/서버 시스템이고 원격 컴퓨터에 표시할 수 있으므로 창을 표시할 위치를 알아야 합니다. 이는 단순히 로컬 컴퓨터의 첫 번째 모니터를 사용하는 것을 의미합니다.

이는 일반적으로 데스크탑 환경에 로그인할 때 자동으로 설정됩니다. 예를 들어 그래픽 터미널을 열고 를 입력합니다 echo $DISPLAY.

관련 정보