x11vnc/ArchLinux
x11vncインストール
以下のコマンドを実行して、x11vncをインストールします。
pacman -S x11vnc
x11vncのパスワード設定
誰でもつなげられるのはセキュリティ的に問題なので、パスワードを設定します。
x11vnc -storepasswd
Enter VNC password:
Verify password:
Write password to /home/user/.vnc/passwd? [y]/n y
Password written to: /home/user/.vnc/passwd
上記の例ではホームディレクトリに保存していますが、別のディレクトリでも構いません。
別のディレクトリに保存した場合は、起動コマンドを見直してください。
ログイン画面からvnc
普通に使用するとログインしないとvncは使用できない?のですが…
ログイン画面からvncで接続できるようにしてみます。
gdmの場合
ディスプレイマネージャにgdmを使用している場合です。
gdmの設定変更
GNOMEでWaylandを使用している場合は、Waylandを無効化する必要があります。
以下のファイルを編集して、Waylandを無効化します。
nano /etc/gdm/custom.conf
【修正前】
#WaylandEnable=false
【修正後】
WaylandEnable=false
編集後は再起動かgdmサービスのreloadをしてください。
x11vncの起動
以下のコマンドを実行して、x11vncを起動します。
環境によって設定内容が異なるので、多少見直してください。
sudo x11vnc -auth /run/user/120/gdm/Xauthority -display :0 -rfbauth /home/[userid]/.vnc/passwd -forever -noxdamage -xkb -wf -cursor most -fixscreen V=10 -fixscreen C=10 -loop
で…vncで接続してログインすると画面が真っ黒になる…
調べたところログイン後はDisplay:1になるとのこと…
なので、一旦「Ctrl+C」でx11vncを終了させて、改めて以下のコマンドを実行してvncでつなぎなおします。
x11vnc -display :1
ちなみにポート番号は5900番のまま見たいです…
つなぎ直す必要があるのは面倒ですね…
LightDMの場合
試しに、ディスプレイマネージャをLightDMに切り替えてvncしてみました。
以下のコマンドを実行して、x11vncを起動します。
gdmの時と同様に、環境によって設定内容が異なるので、多少見直してください。
sudo x11vnc -auth /var/lib/lightdm/.Xauthority -display :0 -rfbauth /home/[userid]/.vnc/passwd -forever -noxdamage -xkb -wf -cursor most -fixscreen V=10 -fixscreen C=10 -loop
こちらの場合はつなぎ直す必要は無いようです。
経験したトラブル
MAC error
ジャーナルに以下のメッセージを出力してVNCが切断される事象が発生しました。
archlinux sshd[1108]: error: Received disconnect from x:x:x:x:x:x:x:x port 56413:1: MAC Error
何となく色の関係かなと思って、VNCViewerの色の数を少なくしたらひとまず発生しなくなりました…。
(これが正しい対処なのかは不明です…)