xinetdによるVNCの起動
coLinuxでXwindowsを使用していると、コンソールからVNCサーバーを起動し、VncViewerを
起動するのがだんだん手間になってきました。
そこで、VNCサーバーをxinetd経由で起動させるようにし、Vncにアクセスがあった場合に、
自動的にVNCサーバーを起動するように設定しました。
さらにcoLinuxをWindowsサービス化して、Windows起動時に自動的に起動するようにすれば、
coLinuxでのX環境への接続がかなり簡素化されます。
xinetdのインストール
xinetdをインストールします。
# emerge -pv xinetd
# emerge xinetd
インストールされたxinetdのバージョンは2.3.13でした。
xinetdの設定
xinetdを設定します。
まず、xinetd経由で起動する全サービスで共通の設定を /etc/xinetd.conf で指定します。
defaults
{
only_from = 192.168.1.2
instances = 60
log_type = SYSLOG authpriv info
log_on_success = HOST PID
log_on_failure = HOST
cps = 25 30
}
includedir /etc/xinetd.d
最後の行で、/etc/xinet.d/ 以下の設定ファイルを読み込んでいます。
各サービス固有の設定は、/etc/xinet.d/ 以下にファイルを作成し、設定します。
ここでは /etc/xinetd.d/vnc を作成します。
service vnc
{
disable = no
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -once -geometry 1024x768 -dpi 96 -depth 16
log_on_failure += USERID
}
ログの指定部分にあるように、"+=" を指定すると、デフォルトの設定に加えるように指定されます。
上記で指定されたサービス名 vnc を /etc/services に設定を加えます。
vnc 5950/tcp
xinetdを自動的に起動するようにします。
# rc-update add xinetd default
XDMCPの設定
XDMCP(X Display Manager Control Protocol)を設定します。
/etc/X11/xdm/Xaccess に以下を追加します。
localhost
xdmを自動的に起動するようにします。
# rc-update add xdm default
xdm経由でのログインでは、.xsessionが読まれる点に注意してください。
coLinuxのWindowサービス化
おまけとしてcoLinuxをWindowsサービスとして自動的に起動する様に設定します。
この機能はcoLinuxのバージョン0.6.1以降であれば、使用可能です。
C:\>cd c:\Program Files\coLinux
C:\Program Files\coLinux>colinux-daemon.ext -c "c:\Program Files\coLinux\default.colinux.xml" --install-service
自動で起動するには 設定→コントロールパネル→管理ツール→サービスで
「Cooperative Linux」を選択し、設定します。