Ubuntu 24.04 LTSは、標準で「リモートデスクトップ」が提供されていますが、ユーザーでログインしないと接続できないなど使い勝手が悪いため、x11vncを導入します。
本ページ記述の内容は、2024年6月時点のUbuntu 24.04 LTS上で確認したものです。関連ソフトのアップデートにより、状況が変わるかもしれませんのでご了承ください。アップデート情報やより良い方法がありましたらコメントをいただけると幸いです。
標準のGDM3ではx11vncが動作しないので、LightDMを導入する。
$ sudo apt install lightdm
インストールの途中で、デフォルトのディスプレイマネージャを選択する画面が表示されるので、LightDMを選択しておく。サーバPCを再起動すると、ログイン画面がLightDMで表示される。
筆者の環境では、nVIDIA系のグラボを使用しているため、デフォルトウインドウシステムが最初から「X11」になっていたが、「Wayland」になっている場合は、以下の手順で変更する。
LightDMのログイン画面で、ユーザー名の右側に表示されているUbuntuロゴをクリックして「Ubuntu on Xorg」を選択して一度ログインしておく。これでデフォルトウインドウシステムが「x11」へ変更される。
以下の手順で、x11vncを導入する。
$ sudo apt install x11vnc
$ sudo x11vnc -storepasswd /etc/.vncpasswd Enter VNC password: ← パスワード入力 Verify password: ← パスワード確認入力 Write password to /etc/.vncpasswd? [y]/n Password written to: /etc/.vncpasswd
一度、手動で起動テストを実行する。
$ sudo x11vnc -auth guess -display :0 -rfbauth /etc/.vncpasswd -rfbport 5900 -forever -loop -noxdamage -repeat -shared ← 1行で入力する
別PCのVNCクライアントから接続して動作確認する。接続先は「サーバPCアドレス」または「サーバPCアドレス:0」とすればOK。
問題なければ、[Ctrl+C]で終了する。
サーバPC起動時にsystemdで自動起動するようユニットファイルを作成する。
$ sudo nano /etc/systemd/system/x11vnc.service
[Unit] Description=x11vnc (Remote access) After=network-online.target [Service] Type=simple ExecStart=/usr/bin/x11vnc -auth guess -display :0 -rfbauth /etc/.vncpasswd -rfbport 5900 -forever -loop -noxdamage -repeat -shared ← 1行で記述する ExecStop=/bin/kill -TERM $MAINPID ExecReload=/bin/kill -HUP $MAINPID KillMode=control-group Restart=on-failure [Install] WantedBy=graphical.target
systemdへ登録して起動する。
$ sudo systemctl daemon-reload $ sudo systemctl enable x11vnc $ sudo systemctl start x11vnc
VNCクライアントから「IPアドレス」または「IPアドレス:0」で接続するとパスワード入力画面が表示されるので、設定したパスワードを入力すると、Ubuntuのログイン画面が表示される。