本記事では、Linux Ubuntuのデスクトップ環境をVNC4serverを使って、クライアント側から遠隔操作でアクセスする方法を紹介します。サーバー側にはVNCサーバーとして「vnc4server」を導入・起動し、クライアント側はWindows10/11の「Ultra VNC」やmacOSの標準の「VNC client」を利用します。
「VNC」で何ができるの?
Linuxのデスクトップ画面を遠隔操作で別のパソコンから見ることができるぞ!
VNCサーバーの概要
VNC (Virtual Network Computing ヴァーチャル・ネットワーク・コンピューティング)は、遠隔地のコンピューターを操作する技術のことです。利用には、操作したいコンピューター(サーバー)と操作するコンピューター(クライアント)にそれぞれサーバー用ソフトとクライアント用ソフトをインストールします。サーバー側のデスクトップ環境を操作するために、サーバー機能を持たせるVNCサーバーと呼ばれるソフトを使用します。
Windows間同士でデスクトップの遠隔操作を行う場合には、RemoteDesktop Protocol (RDP)を利用しています。LinuxベースのデスクトップもVNCを利用することで同じような操作で接続出来ます。
本記事では、
の組み合わせにて、「VNCサーバー」と「クライアントソフト」をインストール方法を紹介します。
デスクトップ環境の遠隔操作
サーバー機能のインストール
$ sudo apt-get update
$ sudo apt-get install vnc4server
vnc4serverコマンドで起動します。
$ vnc4server
New 'hostname:1 (user)' desktop is hostname:1
Starting applications specified in /home/user/.vnc/xstartup
Log file is /home/user/.vnc/hostname:1.log
ここで、「user」ホームディレクトリの「.vnc/xstartup」内にvncサーバーの設定ファイルが記載されています。
最初の設定時には以下の設定ファイルが記載されています。
!/bin/sh
# Uncomment the following two lines for normal desktop:
#export XKL_XMODMAP_DISABLE=1
#unset SESSION_MANAGER
#日本語入力設定
unset DBUS_SESSION_BUS_ADDRESS
export GTK_IM_MODULE=ibus
export XMODIFIERS="@im=ibus"
export QT_IM_MODULE=ibus
/usr/bin/ibus-daemon -dxr
#/usr/bin/gnome-session --session=ubuntu-2d
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
exec gnome-session &
gnome-panel &
gnome-settings-daemon &
metacity &
nautilus -n &
gnome-terminal &
上記の設定ではgnomeのパネルが表示されますがマシンスペックが低い場合は動作が遅くなるため、本記事ではより軽量高速な「Xfce4」のデスクトップ環境をインストールしておきます。
デスクトップ起動用にXfce4を先にインストールして以下のように起きます。
sudo apt install xfce4 xfce4-goodies
同時に、上記で解説した「.vnc/xstartup」設定ファイルをバックアップして置き、新しく同一名で設定ファイルを以下を記載した表記の通り設定ファイルに書き直しておきます。
#!/bin/bash
xrdb $HOME/.Xresources
startxfce4 &
立ち上げた際にxfce4を立ち上げることにしておきます。
クライアント機能のインストール
以下でクライアント側として「Windows」の場合と「macOS」の場合でそれぞれ紹介します。
VNCのクライアントソフトをインストールするために、窓の杜から「Ultra VNC viewer」をダウンロードしておきます。
https://forest.watch.impress.co.jp/library/software/ultravnc/
上記URLからソフトをダウンロードしてWindows10にインストール後に、以下のような画面が現れます。
VNC Serverに以下のように「IPアドレス:ポート番号」を入力します。
ここでは「192.168.12.10:5901」を入力します。ポート5901を使用します。
最後の1はVNC4serverを立ち上げた際に表示される「hotmaime:1」の1に対応しています。
その後、Connectをクリックすると以下のようなVNC画面が現れます。
最初に「ようこそXfceへ…..」が表示され、Xfceで起動できていることがわかります。そのまま下部「デフォルト設定を使用する」のボタンをクリックすれば、以下のような画面に切り替わります。
これで使用出来る状態となります。
接続の終了時には、「URUTRA VNC」のWindowsを閉じればクライアント側の接続は終了できますが、サーバー側の接状態はそのままになってしまいます。
サーバー側の接続を切断するために、以下の手続きが必要です。
サーバー側のVNC接続を終了するには、サーバー側のコマンドプロンプトで、下記の接続切断用コマンドを入力します。コマンド最後に示される「1」はディスプレイ番号です。これは、立ち上げた際に、「New ‘hostname:1 (user)’ desktop is hostname:1」と現れた「1」のディスプレイ番号に対応しています。
$ vncserver -kill :1
Killing Xvnc4 process ID 3042413
macOSではOS上でVNCが利用できるようになっています。
まず、クライアント側がmacOSである場合、Finderから「サーバーへ接続」を押し、以下のように
「vnc://IPアドレス:ポート番号」= 「vnc://192.168.12.10:5901」
とタイプして下の「接続」ボタンを押せば利用できます。Windowsと同様にLinux のDesktop画面が利用できるようになります。
まとめ
本記事ではクライアント側からサーバー側のデスクトップ環境を遠隔操作する方法を解説しました。
コメント