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/[Eメール保護]:
[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
プロセスがフォークされていないため、ExecStart
VNC サーバーの存続期間中に次のコマンドが実行され続けることを示します。
User=lightdm
LightDMログインプロンプト中にXクライアントを実行することを目的としたシステムユーザーであるユーザーが、次のプロセスをExecStart
実行する必要があることを示します。lightdm
このユーザーはXサーバーを所有しているため、ログインプロンプトでアプリケーションを実行するには、このユーザーとしてアプリケーションを実行する必要があります。
ExecStart=/usr/bin/x11vnc -display %i
サービスが有効になっているときに実行されるコマンドで、x11vnc
ディスプレイからの起動を意味し、%i
サービスの起動時に「@」記号の後に続くすべての項目を示します。
Restart=always
サービスが開始されないたびに再試行してください。
RestartSec=3
再試行するたびに3秒間待機することを示します。
WantedBy=graphical.target
systemdがグラフィックシステム(レガシーランレベル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 Monitor 、、:0
Port 、およびで複数のVNCサーバーを実行できます。:1
:2
5900
5901
5902
x11vnc@:0
x11vnc@:1
x11vnc@:2