X11 VNC Server(Manjaro Linux)とUltraVNC viewer(Winodws)でリモートデスクトップを実現してみた。

以前から試してみたいと思っていたのだが、忘れていたリモートデスクトップの設定を、ゴールデンウィークの休みでやってみた。

Manjaro LinuxではX11 VNC Serverが公式パッケージで、TigerVNCはAURだったので、X11 VNC Serverをインストールした。Windows側もTigerVNC veiwerにしようと思ったが、ダウンロードサイトのWindows用インストールパッケージの種類が多く、何が違うのかの説明もなかったので、どれが適当なのか分からなかった。諦めて、窓の杜からUltraVNCをダウンロードした。

Manjaro LinuxのIPアドレスを固定IP(192.168.1.4)に設定し、Manjaro Linuxのメニューのインターネットの「X11 VNC Server」という項目をクリックすると、設定画面が表示される。英語だが、「Accept connect」をチェックし、パスワードなしで5900ポートでOKボタンをクリックすると、タスクバーでアイコンが表示され、常駐した。

UltraVNCはWindows10でセットアッププログラムを起動し、viewerだけインストール。起動すると、接続先を192.168.1.4:5900と指定して、connectすると、パスワードなし接続だという警告が表示されるが、そのまま接続すると、Windowsのウィンドウで、Manjaro Linuxのデスクトップが表示され、スムーズに操作できた。やはり、操作性は一瞬遅れるが、いちいちパソコンを移動する必要がなくなったので、楽になった。

ただ、そのままでは、毎回「X11 VNC Server」を自分で起動しなければならない。Manjaro Linuxのサービスへ登録するのが良いらしいとのネット情報があり、X11 VNC用のパスワードファイルを作成し、/etc/systemd/system/x11vnc.serviceというユニットファイルを、訳も分からず、ネット情報のまま作成して、再起動した。ここで、また忘れていたブート順序の設定を、Windowsがインストールされたドライブではなく、直接Manjaro LinuxのSSDを起動するよう、ファームウェアの設定を変更した。これで、F7で起動ドライブの変更操作をしなくても、電源ボタンを押すだけでManjaro Linuxが起動するようになった。起動直後のManjaro Linuxへ、Windowsから接続して、成功した。x11vncはサービスとして動作しているので、Manjaro Linuxのタスクバーにアイコンは表示されないが、UltraVNC Viewerでコネクトすると、ちゃんと接続できる。

/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 -ultrafilexfer
ExecStop=/bin/kill -TERM $MAINPID
ExecReload=/bin/kill -HUP $MAINPID
KillMode=control-group
Restart=on-failure

[Install]
WantedBy=graphical.target

(2024/5/19 追記) /etc/systemd/system/x11vnc.serviceの記述で、/usr/bin/x11vncのオプションに、”-ultrafilexfer”を追加すると、UltraVNC Viewerのファイル転送機能が利用できるようになった。しかし、Linux側の日本語ファイル名が文字化けしていたり、Windowsのフォルダ構造を前提にしたファイル指定画面だったり、使いづらかった。

これで、どれだけ便利になるかは不明だが、技術的知見を得られた満足感があった。

カテゴリー: Linux, パソコン パーマリンク

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です