Turbo VNCは、公開されているRPMパッケージで導入できた。
ただいくつかの問題点に気が付いた。
インストールする前に、次に挙げる不具合を確認したほうがいい。
「ただし、このブログ記事は、2012年のものなのでとても古いです。
現在の新しいパッケージでは、不具合が解決されているかもしれません。試していません。」
(不具合)
・gnome上で、ファイルアイコンの右クリックメニューを表示させたとき、しばしばメニュー一番目にある項目が勝手に選択実行されてしまった。
そのため、ファイルで右クリックを押しただけでそのメニュー一番目に「アプリケーションで開く」があれば勝手にファイルが開いてしまうし、
デスクトップ上の何もないところで右クリックを押しただけで、そのメニューの一番目にある「フォルダを新規作成」が勝手に選択実行されて、フォルダが作成されてしまった。
(回避策: 右クリックで表示されるメニューを使わないこと。代わりに、デスクトップをHOMEフォルダから開いてウインドウ表示させ、その編集メニューにあるコピーや、貼り付けなどの機能を用いる。)
・このインストール環境で試したところ、gnome上でファイルのドラッグアンドドロップ操作ができなかった。
(回避策: ウインドウ上部バー編集メニューにあるコピーアンドペーストを使う。)
そのため、ファイルで右クリックを押しただけでそのメニュー一番目に「アプリケーションで開く」があれば勝手にファイルが開いてしまうし、
デスクトップ上の何もないところで右クリックを押しただけで、そのメニューの一番目にある「フォルダを新規作成」が勝手に選択実行されて、フォルダが作成されてしまった。
(回避策: 右クリックで表示されるメニューを使わないこと。代わりに、デスクトップをHOMEフォルダから開いてウインドウ表示させ、その編集メニューにあるコピーや、貼り付けなどの機能を用いる。)
・このインストール環境で試したところ、gnome上でファイルのドラッグアンドドロップ操作ができなかった。
(回避策: ウインドウ上部バー編集メニューにあるコピーアンドペーストを使う。)
・システム起動時のタイミングでtvncserverを自動起動させると、gnomeが日本語モードにならなかったので注意。
(回避策: 手動で起動すれば問題なかった。対応方法などは後述)
(回避策: 手動で起動すれば問題なかった。対応方法などは後述)
今後の、バージョンアップに期待して前向きに。
□インストール手順
(注意事項)
・設定ファイル名や実行ファイルの位置などが、yumでインストールできるvnc serverとは異なっていたので注意。
<前提>
・CentOS 6.2 64bit版は、インストーラーで「デスクトップ」を選択して導入したものを用いた。
・SELinuxは解除した。
・簡単のためにファイアウォールは無効にした。
1、rpmファイルのダウンロードを行った
http://sourceforge.net/projects/virtualgl/files/TurboVNC/1.1/ からrpmファイルをダウンロードした。
[root@local software]# ls
turbovnc-1.1.x86_64.rpm
2、必要なパッケージをインストールした
[root@local software]# yum install libXaw
Installed:
libXaw.x86_64 0:1.0.6-4.1.el6
Complete!
3、rpmコマンドを使って、ダウンロード済みのturbovnc-1.1.x86_64.rpmをインストールした
[root@local software]# rpm -ivh turbovnc-1.1.x86_64.rpm
準備中... ########################################### [100%]
1:turbovnc ########################################### [100%]
□設定手順
<前提>
・ログインできてgnomeが使用可能な「LINUXユーザー」(例として、userA、userB)があること
・そのユーザーで一度以上ログインしgnomeを使用しており、ホームディレクトリに関係ファイルが配置されていること
0、設定に必要なファイルの位置や名前を確認した
[root@local software]# find / -name "*vnc*"
/usr/share/doc/turbovnc-1.1
/usr/share/doc/turbovnc-1.1/turbovnc.css
/usr/share/doc/turbovnc-1.1/turbovnc3.png
/usr/share/doc/turbovnc-1.1/turbovnc1.png
/usr/share/doc/turbovnc-1.1/turbovnc6.png
/usr/share/doc/turbovnc-1.1/turbovnc5.png
/usr/share/doc/turbovnc-1.1/turbovnc4.png
/usr/share/doc/turbovnc-1.1/turbovnc2.png
/usr/share/applications/tvncviewer.desktop
/root/software/turbovnc-1.1.x86_64.rpm
/opt/TurboVNC/man/man1/vncserver.1
/opt/TurboVNC/man/man1/vncviewer.1
/opt/TurboVNC/man/man1/vncpasswd.1
/opt/TurboVNC/man/man1/vncconnect.1
/opt/TurboVNC/man/man1/Xvnc.1
/opt/TurboVNC/vnc
/opt/TurboVNC/vnc/classes/index.vnc
/opt/TurboVNC/bin/vncpasswd
/opt/TurboVNC/bin/vncconnect
/opt/TurboVNC/bin/tvncconfig
/opt/TurboVNC/bin/Xvnc
/opt/TurboVNC/bin/vncviewer
/opt/TurboVNC/bin/vncserver
/etc/sysconfig/tvncservers
/etc/rc.d/rc5.d/K35tvncserver
/etc/rc.d/rc4.d/K35tvncserver
/etc/rc.d/rc1.d/K35tvncserver
/etc/rc.d/rc2.d/K35tvncserver
/etc/rc.d/rc0.d/K35tvncserver
/etc/rc.d/rc6.d/K35tvncserver
/etc/rc.d/rc3.d/K35tvncserver
/etc/rc.d/init.d/tvncserver
/etc/turbovncserver.conf
/etc/turbovncserver-auth.conf
1、LINUXユーザーのホームディレクトリに、.vnc 隠しディレクトリを作成した
作成する.vncディレクトリは、userAがリード・ライトできるようにした
[root@local software]# cd /home/userA
[root@local software]# su userA
bash-4.1$ mkdir .vnc
同様にして、userBについても設定を行う
2、VNCパスワードを設定した(VNC ViewerでVNC Serverにアクセスするときに求められる)
(注意) su userAのままなので、userA用パスワードを作成することになる
bash-4.1$ /opt/TurboVNC/bin/vncpasswd
Password: ←設定するパスワードを入力した
Verify: ←確認のためもう一度入力した
Would you like to enter a view-only password (y/n)? n ← yにすると、view-only用になってしまうので注意
3、VNCサーバの設定を行った
(注意)rootに戻っておく
設定ファイル内の例に倣って設定を行った
[root@local ~]# vim /etc/sysconfig/tvncservers
一部抜粋
# VNCSERVERS="1:myusername"
# VNCSERVERARGS[1]="-geometry 800x600 -nohttpd -localhost"
#
VNCSERVERS="1:userA 2:userB"
1:userAの1や、2:userBの2は、VNCのディスプレイ番号である。
ディスプレイ番号は重ならないように指定すること。
(注意)
ディスプレイ番号は、VNCクライアントが接続してくる「待ち受けポート番号」に関係する。
待ち受けポート番号 = 5900 + ディスプレイ番号になっている。
ディスプレイ番号によっては、(システム予約され)使用できないポート番号と重なってしまい、VNCSERVERの起動に失敗してしまう。
たとえば、ディスプレイ番号、53や、102に設定すると、VNCSERVERの起動に失敗した。
この場合、別の番号を指定すると問題なく起動することができた。
4、VNC Serverを起動した
[root@local ~]# service tvncserver start
TurboVNC server を起動中: 1:userA 2:userB [ OK ]
5、システム起動時に自動的にスタートするように設定した
[root@local ~]# chkconfig tvncserver on
システム起動時のタイミングでtvncserverを起動すると、gnomeが日本語モードにならなかったので注意。
rc.localに起動コマンドを記述する方法でも同様に、gnomeが日本語にならなかった。 gnomeで日本語を使いたい場合は、自動スタートの設定をせずに、
システム起動後にターミナルから手動でservice tvncserver startすると良い。
□動作テスト
今回のインストール作業で専用Viewerもインストールされており、GNOMEのメニューから利用可能だった。
動作テストでは、クライアントソフトのVNC Viewer (Windows版)からアクセスした。
TurboVNC専用のクライアントソフトを使うと、ローカルで操作しているみたいにとても快適だった。
VNC Viewerには、サーバマシンIPv4アドレスと接続ポートを指定した。
接続ポート番号で、VNCのディスプレイ番号とLINUXユーザーが区別される。
接続ポート番号は、5900に「VNCのディスプレイ番号」を加算した数になる。
(例)userAのVNCディスプレイ番号にアクセスする場合
VNC Serverアドレス:5901