2009/05/29(Fri)VNC Serverをxinetd経由で立てる方法 [Ubuntu Server 8.10]

2009/06/01 15:09 Software::Linux
VNC on Fedora 10VNC on CentOS 5.3に引き続き、Debian系のUbuntu Server 8.10でもVNC Serverを立てる必要が出来たので、そのメモ。

インストール

Ubuntuの場合はパッケージ名が違うので注意。
# apt-get install xinetd vnc4server

/etc/services

356行目辺りに次の一文を追加
vnc             5900/tcp                        # VNC Server

/etc/xinetd.d/vnc

次のように設定
service vnc
{
        disable         = no
        nice            = 10
        socket_type     = stream
        wait            = no
        user            = nobody
        server          = /usr/bin/Xvnc
        server_args     = -inetd -query localhost -once -geometry 1024x768 -depth 16 -securitytypes=none -extension XFIXES
        log_on_success  += DURATION USERID
        log_on_failure  += USERID
}
設定値の内容については、Fedora 10の方法を参照。
ただし、Ubuntu限定で -extension XFIXESというパラメータが必要らしい。
これを付けないと、つないだ瞬間背景だけ表示されてvncviewerが落ちる。

xinetdを再起動
# service xinetd restart
 * Stopping internet superserver xinetd
   ...done.
 * Starting internet superserver xinetd
   ...done.

iptablesの確認

Ubuntuの場合はデフォルト全て許可なので、Firestarterを使ってたり、手でiptablesを書いている方は5900/tcpを許可する。

/etc/gdm/gdm.conf

以下の行をコメントアウト
Greeter=/usr/lib/gdm/gdmgreeter
RemoteGreeter=/usr/lib/gdm/gdmlogin
以下の行を変更
[xdmcp]
Enable=true
たしか変更したのはここだけだったと思うけど、念のため、全文の/etc/gdm/gdm.conf

再起動しておく
# service gdm restart
 * Stopping GNOME Display Manager...
   ...done.
 * Starting GNOME Display Manager...
   ...done.
これで接続すると、Debianのロゴが出てくる。
ubuntu_vnc1.png


普通のUbuntuロゴに戻したい方はいったんログインして、System -> Administration -> Login Windowを開き、Remoteタブを開いてStyleを"Same as Local"にする。
ubuntu_vnc2.png


ubuntu_vnc3.png


後は、Localタブでお好みのStyleを選べばよい。

最終的に

こんな風にリモートでもローカル同様のログインパネルになります。

ubuntu_vnc4.png


Ubuntu 9.10での設定 2010/05/11

8.xxとは色々変わったようで上記の設定のままを真似できないところがある。
いずれまとめなおそうと思っているが暫定でここら辺りが参考になる。(もう10.04とか出てるけど…)