lightdm을 사용하여 부팅 시 시작되도록 x11vnc를 어떻게 설정합니까?

lightdm을 사용하여 부팅 시 시작되도록 x11vnc를 어떻게 설정합니까?

LightDM과 GNOME 데스크탑이 모두 구성되어 실행되는 X 서버가 있습니다. X 서버에 액세스하기 위해 x11vnc를 설치했습니다. GNOME에서 터미널을 열고 를 실행했습니다 x11vnc. 이렇게 하면 VNC를 통해 실제 X 서버에 액세스할 수 있지만 자동으로 시작하고 싶습니다. LightDM에 로그인한 후 start를 입력할 수 있지만 VNC에 로그인할 때 LightDM 프롬프트를 볼 수 있도록 LightDM이 시작된 직후에 시작하는 것을 선호합니다 x11vnc. ~/.xprofile어떻게 해야 하나요?

답변1

x11vnc 서버 LightDM을 시작하기 위해 systemd 서비스를 추가하면 After=됩니다 . lightdm불쾌한 XAuthority 오류가 발생하지 않도록 서비스가 사용자로 실행되고 있는지 확인하십시오 No protocol specified.

/etc/systemd/system/[이메일 보호됨]:

[Unit]
Description=Remote desktop service (VNC)
After=display-manager.service

[Service]
Type=simple
User=lightdm
ExecStart=/usr/bin/x11vnc -display %i                      
Restart=always
RestartSec=3

[Install]
WantedBy=graphical.target

After=display-manager.service이 서비스를 시작하기 전에 디스플레이 관리자(LightDM)를 실행해야 함을 systemd에 알립니다.

Type=simple프로세스가 포크되지 않았으므로 ExecStartVNC 서버의 수명 동안 다음 명령이 계속 실행됨을 나타냅니다.

User=lightdmLightDM 로그인 프롬프트 중에 X 클라이언트를 실행하는 것이 목적인 시스템 사용자인 사용자가 다음 프로세스를 ExecStart실행해야 함 을 나타냅니다. lightdm이 사용자는 X 서버를 소유하므로 로그인 프롬프트에서 응용 프로그램을 실행하려면 이 사용자로 응용 프로그램을 실행해야 합니다.

ExecStart=/usr/bin/x11vnc -display %i서비스가 활성화될 때 실행되는 명령으로, x11vnc디스플레이에서 시작을 의미하며 %i서비스를 시작할 때 "@" 기호 뒤에 오는 모든 항목을 나타냅니다.

Restart=always서비스가 시작되지 않을 때마다 다시 시도하십시오.

RestartSec=3재시도할 때마다 3초 동안 대기함을 나타냅니다.

WantedBy=graphical.targetsystemd가 그래픽 시스템(레거시 런레벨 5)을 시작할 때마다 서비스가 실행됨을 나타냅니다.

장치를 로드하려면(systemd가 장치를 "보도록" 설정) 다음 명령을 실행하십시오.

# systemctl daemon-reload

활성화하려면(부팅 시 시작되도록) 다음 명령을 실행하세요.

# systemctl enable x11vnc@<your-$DISPLAY-here>

<your-$DISPLAY-here>VNC 액세스 권한을 부여하려는 X가 나타나는 위치(일반적으로 :0)
를 시작하려면 다음 명령을 실행하세요.

# systemctl start x11vnc@<your-$DISPLAY-here>

에 대해서는 위와 동일합니다 <your-$DISPLAY-here>.

"@" 뒤에 다른 디스플레이를 전달하면 동일한 단위 파일에서 여러 개의 독립적인 서비스를 실행할 수 있습니다. 예를 들어 X 모니터 :0, :1, :2포트 5900, 59015902, x11vnc@:0및 에서 x11vnc@:1여러 VNC 서버를 실행할 수 있습니다 x11vnc@:2.

관련 정보