vnc

[CentOS6.4]デスクトップ環境を構築してVNCでリモートデスクトップ


vnc

QENU+KVMで仮想サーバーを管理する際、やはりグラフィカルな管理画面があった方が使い勝手が非常に良い。

今回、仮想サーバー用に準備したサーバーは大容量メモリを搭載し、メモリは有り余る状況の為、サーバー側にデスクトップ環境を構築してVNCでアクセス可能な状態にする。

ただ、それでも出来る限り、メモリは節約したいので、VNCサーバー「tigervnc-server」は、xinetdでアクセスがあった時に起動する形を取る。

以下は、必要最低限の設定が完了している、CentOS 6.4 minimal を前提に進める。

デスクトップ環境をyumでインストールする。

[root@tkmemo ~]# yum groupinstall "X Window System" "Desktop" "General Purpose Desktop" "Japanese Support"

日本語でデスクトップ環境を使う場合

[root@tkmemo ~]# vi /etc/sysconfig/i18n
LANG=en_US.UTF-8
LANG=ja_JP.eucJP

xinetdとtigervnc-serverをインストールする。

[root@tkmemo ~]# yum install xinetd tigervnc-server

vncでアクセスする際、無条件にログイン画面を表示させるのは、少々怖いので簡易的ではあるがパスワードを設定する。

[root@tkmemo ~]# vncpasswd /etc/vnc_password

[root@tkmemo ~]# chown nobody.nobody /etc/vnc_password 

xinetd用の起動スクリプトを作成する。

[root@tkmemo ~]# vi /etc/xinetd.d/vnc-server
service vnc-server
{
socket_type = stream
nice = 10
flags = REUSE
wait = no
user = nobody
server = /usr/bin/Xvnc
#画面サイズ等はお好みで。カラーは32bitを使うと不安定。仮想環境の管理だけなら16bitで十分かと。
server_args = -inetd -query localhost -once -geometry 1024x768 -depth 16 --PasswordFile=/etc/vnc_password
log_on_failure += HOST
log_on_success += DURATION
disable = no
}

xinetdを自動起動

[root@tkmemo ~]# chkconfig xinetd on

VNCでアクセスした際、GNOMEを使う
GNOME ディスプレイマネージャの設定を変更する。

[root@tkmemo ~]# vi /etc/gdm/custom.conf

# GDM configuration storage

[daemon]

[security]
AllowRemoteRoot=true #rootでのログインを許可する場合
[xdmcp]
Enable=true #xdmcpを有効
[greeter]

[chooser]

[debug]

ランレベルを3->5に変更する。
なぜか3ではGNOMEが使えない。古いバージョンなら5にした後、gdm/custom.confで指定する事で起動時にGNOMEを起動しないように出来るが、現行バージョンではその指定が無効になっている為、対処方法が分からない。ただローカルがGUIになったとしてもメモリを100M程度消費する程度。

[root@tkmemo ~]# vi /etc/inittab
id:5:initdefault:

[root@tkmemo ~]# reboot

起動後、VNCクライアントからアクセスするとグラフィカルログイン画面が出るはず。

ファイヤーウォールが起動している場合は、ポートを空ける。
5900/tcp+udp



Kenzi Tada について

カメラマンを本業と出来るよう鋭意努力中ですが、まだまだ力量が不足し、広告企画制作や技術者としての仕事をメインに、二足のわらじ、もとい四足ぐらいか(笑) 作品制作や撮影のお仕事にご協力頂ける被写体様(男女年齢問わず)、ヘアメイクアップアーティスト様を随時募集しております。ご興味が御座います方は是非、ご連絡下さい。