2009年 7月 16日(木曜日) 10:34

VNC Serverの設定

評価:
(0 票)

今までさくらのレンタルサーバを使っていましたが、新規プロジェクト開始に伴い思い切って専用サーバを借りることにしました。

専用サーバでもOSはCentOS4/5, Ubuntu, FreeBSDなどの無料のものが選べるようなので、いままで開発環境として使っていたFedoraCoreに近いCentOS5を使うことにして、開発環境も本番環境に合わせることになりました。

開発環境をゼロから構築し直しになってしまいますが・・・最新の動向に合わせて開発環境のリニューアルもときどき必要かなあと思います。

まずはCentOS5をインストールした直後の状態で、リモートのWindowsPCからLinuxサーバを操作できるようにVNCのセットアップを行いました。

1. VNCパスワードを設定

VNCを使用するユーザで、vncpasswdコマンドを実行し、VNCのパスワードを設定します。

2. /etc/sysconfig/vncserverを編集

VNCサーバの設定ファイルは/etc/sysconfig/vncserverです。rootユーザでファイルを開き、一番下に下の2行を追加します。(ユーザ名kura、ディスプレイ番号1)-geometryでは画面のサイズを指定します。

VNCSERVERS="1:kura"
VNCSERVERARGS[1]="-geometry 1280x1024"

3. ポートを開く

「システム」→「管理」→「セキュリティレベルとファイアウォールの設定」で、「その他のポート」に"5901"を追加します。

VNCのポートはデフォルトでは5900番台になっており、5900+ディスプレイ番号がそのディスプレイのポートになります。

4. サービスに追加・サービスを開始

Linuxを起動する度にVNCサービスが自動的に開始されるように、「システム」→「管理」→「サーバ設定」→「サービス」で、Run Level5のvncserverにチェックを入れます。

ついでに「開始」ボタンを押してサービスを開始します。

5. Gnomeデスクトップの設定

この時点ですでにVNCクライアントでリモートから接続できる状態になっていますが、このままだと古風なTab Window Managerの画面が開いてしまいます。

Gnomeデスクトップに変更するには、VNC接続するユーザのホームの下に作成される~/.vnc/xstartupを編集します。

#!/bin/sh

# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
#xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#twm &
exec gnome-session &

のように、最後の2行をコメントアウトして、一番最後に"exec gnome-session &"を追加しました。

xstartupはVNCで接続されたときに自動的に呼ばれます。

ちなみに、"vncconfig -iconic &"を呼んでおくと、ローカルPC(Windows)とサーバ(Linux)の間でコピー&ペーストができるようになります。以前は自分で設定していた覚えがありますが、最近は初めから書かれているようです。また、-iconicだと間違えてvncconfigを終了してしまうことがあるので、-nowinに変えておくとvncconfigのWindowが表示されず、間違えて終了することを防ぐことができます。

以上で、VNCのセットアップは完了し、Linuxサーバをリモートから操作できるようになりました。

5. 接続

VNCクライアントから「サーバ名:ディスプレイ番号」で接続します。VNCクライアントにはいろいろありますが、私はフリーのRealVNCというのを使っています。

簡単ですね。VNCを使う以前はCygwinXを使ってグラフィカルログインするようにしていましたが、設定が非常に面倒で苦労した覚えがあります。今は本当に何でも簡単にできて、至れり尽くせりですね。^^

最終更新日: 2011年 6月 27日(月曜日) 01:44
くらち たかよし

くらち たかよし

モバイル・Webアプリ作家。最近は主にiPhoneアプリ制作を手がける。企画から、UIデザイン、設計、実装、テスト、多言語対応、ユーザーサポートまでを1人〜数人の個人で行う全人的開発手法の確立を目指している。

使う言語はObjective-C, C++, C#, Java, PHPなど。Web関連で使うものはCakePHP, MySQL, Joomla! CMSなど。デザインはシロウトながらPhotoshopとIllustratorをなんとかがんばって使う。

場所や時間に縛られない、インターネット時代の新しい働き方、自由な生き方を模索中。海外移住、低予算&低リスク起業、キャリアデザイン、心理学などにも興味あり。

Web: awaresoft.jp/