Arch LinuxでVNC Server
(このページは工事中です)
参照ページ
方針
暗号化しない。
セッションは1つのみ
インストール
sudo pacman -S tigervnc
yay -S windowmaker
初回のビルドではエラーが出たが、sudo pacman -Syyu、yayを実行後にリトライしたら成功した。
afterstepのインストールもやってみたが、エラーが出るのでWindowMakerにした。
パスワードの設定
vncpasswd
設定したパスワードはハッシュ化されて~/.vnc/passwdに保存される。
サーバの設定
vim ~/.vnc/config
code:~/.vnc/config
session=wmaker
geometry=1920x1080
localhost=no
alwaysshared
を書いた。wmakerはWindowMakerの実行ファイル名(PATH中にあればフルパスでなくて良い)。
ユーザーの設定
sudo vim /etc/tigervnc/vncserver.users
code:/etc/tigervnc/vncserver.users
:1={ユーザ名}
を追記。VNCクライアントで接続すると自動的にこのユーザー名でログインされる。
サービスの起動
sudo systemctl enable vncserver@:1.serviceが端末起動時の自動起動の設定。
sudo systemctl start vncserver@:1.serviceで起動。
エラーが出たらsudo systemctl status vncserver@:1.serviceで確認。
詳細なログはsudo journalctl -xeu vncserver@:1.serviceで見られる。
接続
適当なクライアントで5901ポートに接続。パスワードを入力して接続。
5901はwell known portではないようなのでクライアントのホスト名欄に「{ホスト名}:5901」のように明示する必要があるかも。
サービスが終了しないようにする
これまでの状態だと、ウィンドウマネージャを抜けるとサービスが終了してしまい、再び接続するにはサービスの開始が必要となる。これを回避するには、
sudo vim /usr/lib/systemd/system/vncserver@.serviceで、Serviceの欄にRestart=alwaysを追記し、 sudo systemctl daemon-reload
sudo systemctl restart vncserver@:1.serviceで設定を反映。
(2025-05-07)