CentOS 環境構築備忘録シリーズ、今回は「VNC サーバー」です。

CentOS に VNC サーバーを導入して、VNC クライアントからデスクトップとして使えるようにします。X Window の導入が必要だし、runlevel=5 で動かすことになるので多少メモリ食いにはなりますが、最近の Linux デスクトップはかなり快適なので、ここまで環境が整うとサーバー側でのデスクトップを快適に使えるようにもなると思っています。

CentOS の導入後、yum で tigervnc サーバーをインストールします:
# yum install tigervnc-server

tigervnc サーバーのインストールが完了したら、引き続き VNC 関連の設定を行います。今回は 5901 番ポートに root ユーザーで接続することを前提として vncservers ファイルを編集します:
# vi /etc/sysconfig/vncservers

  :
VNCSERVERS="1:root"
VNCSERVERARGS[1]="-geometry 1024x768 -nolisten tcp"
  :

Tiger VNC はパスワードが必須なので、 VNC 接続用のパスワードを設定しておきます:
# vncpasswd
Password:(入力内容は画面に表示されません)
Verify: (同じパスワードを入力)

一旦 VNC サーバーを起動して、最低限必要な環境をセットアップします(次の作業で編集する xstartup の雛形もこの時に作られます):
# /etc/init.d/vncserver start

直前のコマンドで xstartup が作成されているはずなので、このファイルを編集します。環境変数 LANG を設定して、GNOME のセッションをそのまま VNC 環境でも使えるようにします:
# vi ~/.vnc/xstartup
#!/bin/sh

export LANG="ja_JP.UTF-8"(この一行を最初に挿入)
  :
  :
(最後の部分を編集)
# xterm -geometory 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" & (コメントアウト)
# twm & (コメントアウト)
gnome-session & (この一行を追加)


改めて新しい設定で VNC サーバーを再起動し、またシステム起動と同時に実行されるようにしておきます:
# /etc/init.d/vncserver restart
# chkconfig vncserver on

これでサーバー側の準備はできました。


実際にこのサーバーに別マシンのクライアント側から接続してみます。VNC Viewer などのVNC クライアントアプリケーションを起動して、VNC サーバーの IP アドレス:1 を指定して接続します(最後の :1 を忘れずに):

vnc01


パスワードを聞かれたら vncpasswd コマンドで設定したパスワードを入力します:

vnc02


正しく接続できれば、サーバー側の GNOME デスクトップが表示されます:

vnc03