はじめに
自分のLinuxの使い方が実機のWSLみたいな使い方で、基本的にリモートで使用するのでVNCを使ってリモートデスクトップしたいなって感じで導入してみました。
参考にしたサイト
ArchWiki「TigerVNC」
Zenn nop「Ubuntu 22.04 TigerVNCのセットアップ」
手順
基本的にArchWikiに従いました。暗号化は行わず、最低限のリモートデスクトップ(セッションは仮想で1つのみ)ができる手順です。
1. インストール
パッケージ名はtigervnc
です。
sudo pacman -S tigervnc
2. パスワードの設定
vncpasswd
3. コンフィグの作成
vim ~/.vnc/config
で
session=jwm
geometry=1920x1080
localhost=no
alwaysshared
を書きました。session=jwmでどのウィンドウマネージャを使用するか決めることができます。実行ファイル名で指定します。
4. ユーザーの設定
sudo vim /etc/tigervnc/vncserver.users
で編集し、
:1={ユーザ名}
を追記しました。ここで指定したユーザー名でログインされます。
5. サービスの起動
sudo systemctl enable vncserver@:1.service
で起動時の自動起動の設定をし、
sudo systemctl start vncserver@:1.service
で起動させます。
sudo systemctl status vncserver@:1.service
でエラーが出てないか確認してください。
sudo journalctl -xeu vncserver@:1.service
とかで詳細なログを得ることができます。
6. 接続!
適当なクライアントで5901ポートに接続すると、パスワードを求められるので、先程設定したパスワードを入力すると接続できます。
サービスが終了しないようにする
現在の状態だと、JWMの方でEXITをしてしまうとサービスが終了してしまい、再び接続するにはサービスの開始が必要となります。これを回避するには、
sudo vim /usr/lib/systemd/system/[email protected]
で開いてあげて、[Service]の欄にRestart=alwaysを追加します。あとは、
sudo systemctl daemon-reload
sudo systemctl restart vncserver@:1.service
で再読み込みしてください。
おわりに
はじめはArch LinuxのWikiだけ読んでやっていたのですが、configが訳わからなくなって大変でした。Wikiだと、configがlocalhost=noでなくlocalhostなので自身からしか接続できず、躓きました。