[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]

[linux-users:104137] Re: vncサーバをxinetd経由で起動させるには?


畠山です。

On Thu, Dec 23, 2004 at 12:32:08AM +0900, KM wrote:
> # service xinetd restart
> 
>  でアクセスしてみたのですが相変わらずでした。
> 何か勘違いしてますでしょうか?

ということであればじっくり検討してみましょう。

xinetd 経由で、XDMベースのログイン、したいのですよね?

(1) /etc/services には VNC 用のエントリは定義されていますか?

    xinetd (inetd) はこのファイルによって、アクセスしてきたポート番号と
    それに対するサービスの対応付けを行ないます。ですからポート番号は
    こちらで定義します。私のマシン(RH7.1)では以下のように定義しています。
    
    vnc-800x600x8   5950/tcp
    vnc-800x600x32  5951/tcp
    vnc-1024x768x8  5952/tcp
    vnc-1024x768x32 5953/tcp
    
(2) /etc/xinetd.conf はどうなっていますか?

    /etc/services で定義したサービスについて実際にどのようなプログラムを
    起動するかは、こちらで定義します。ただ、大抵の環境では末尾に
    
    includedir /etc/xinetd.d
    
    となっていて、/etc/xinetd.d ディレクトリの下にサービス毎の定義
    ファイルを置くようになっていると思います。
    
(3) であれば、/etc/xinetd.d に実際のサービス定義のファイルを置きます。
    ファイル名は特に意味を持ちませんので、適当でいいでしょう。
    
    ここで定義されるサービスの名前は /etcv/services で定義したものに
    対応している(同じ名前になっている)必要があります。  
    
    で、

> # cat /etc/xinetd.d/vncserser
> service vnc-800x600x24
> {
>         socket_type     = stream
>         protocol        = tcp
>         port            = 5950
>         wait            = no
>         user            = nobody
>         server          = /usr/local/vnc/Xvnc
>         server_args     = -inetd -query localhost -once -geometry
> 800x600 -depth 24 -nevershared -ac /usr/bin/X11/xset q
> }
> # end
> # description: This vnc server serves 800x600x8 VNC sessions
> service vnc-800x600x24
> {
>         socket_type     = stream
>         protocol        = tcp
>         port            = 5951
>         wait            = no
>         user            = nobody
>         server          = /usr/local/vnc/Xvnc
>         server_args     = -inetd -query localhost -once -geometry
> 800x600 -depth 24 -nevershared -ac /usr/bin/X11/xset q
> }
> # end

    と私が使っているものとの差を見ると、
    
    o port は定義しなくていいはずです。
    
        こっちでも定義するとどういう動きになるのかな...
	
    o flags = REUSE NODELAY を入れておいた方がいいでしょう。
    
で、ここまでやって、 xinetd を restart すればOKのはずです。
実際にサービスが開始されいるかどうかは

    netstat -a
    
で確認してみてください。/etc/services で定義された名前で LISTEN して
いればOKです。ここまでOKであれば、とりあえずビューワからの接続は
可能になるはずです。

    LISTEN が出ていても接続できなかったら firewall あたりを
    疑ってください。

繋がってもログインウィンドウが出ない、とかであれば次は xdm、gdm
あたりの設定の問題になります。

    フォントパスを定義しておかないと動作しないディスプレイマネージャも
    ありますので、フォントパスは追加しておいた方がいいですよ。

-- 
Akira Hatakeyama	E-Mail: akira@xxxxxxxxx
   http://www.sra.co.jp/people/akira/index.html
chigasaki-minami, tsuzuki ward, yokohama, japan

この情報があなたの探していたものかどうか選択してください。
yes/まさにこれだ!   no/違うなぁ   part/一部見つかった   try/これで試してみる

あなたが探していた情報はどのようなことか、ご自由に記入下さい。特に「まさにこれだ!」と言う場合は記入をお願いします。
例:「複数のマシンからCATV経由でipmasqueradeを利用してWebを参照したい場合の設定について」
Follow-Ups: References: