• 締切済み

Solaris 9 の VNCServer を inetd から起動させる

Solaris 9にVNCServerをインストールしましたが、root で VNCServer を起動してから IP xxx.xxx.xxx.xxx:1 としないとVNCでサーバに接続できません。 /.vnc/xstartup に gnome-session を書き足して、かつ /usr/local/bin/vncserver の twm &\n を /opt/gnome-2.0/bin/gnome-session &\n に書き換えて見ましたが gnome-session が twm の代わりにスタートするようになっただけで、root で VNCServer を起動してからでないとVNC接続できないということには変わりありませんでした。 IP xxx.xxx.xxx.xxx:50 または 52 とやっても No password configured for VNC Auth というエラーが出てきてしまいます。その時のプロセスを見ると下記のように出ます。 nobody 366 180 0 18:10:49 ? 0:00 Xvnc -inetd -query 10.10.10.1 -once -geometry 1024x768 -depth 8 -cc 3 また root でサーバ上で起動すると下記のような状態で、:1からVNCできます。 root 864 855 1 07:11:13 console 0:00 gnome-session root 853 1 1 07:11:09 console 0:00 Xvnc :1 -desktop dcnetlab:1 () -httpd /usr/local/vnc/classes -auth //.Xauthorit root 860 855 1 07:11:12 console 0:00 xterm -geometry 80x24+10+10 -ls -title dcnetlab:1 () Desktop /etc/services には ・vnc-800x600x8 5950/tcp ・vnc-1024x768x8 5952/tcp が書き込んであります。そして /etc/inetd.conf には ・vnc-800x600x8 stream tcp nowait nobody /usr/local/bin/Xvnc Xvnc -inetd -query xxx.xxx.xxx.xxx -once -geometry 800x600 -depth 8 -cc 3 ・vnc-1024x768x8 stream tcp nowait nobody /usr/local/bin/Xvnc Xvnc -inetd -query xxx.xxx.xxx.xxx -once -geometry 1024x768 -depth 8 -cc 3 が書き込まれています。 どうすれば、VNC でログインする時にVNCを起動できるように、かつユーザIDを入力できるよになり、root 以外でもログインできるようになるのでしょうか? どうか宜しくお願いします。

みんなの回答

  • asdf24
  • ベストアンサー率54% (27/50)
回答No.2

> "unable to connect to host: Connection refused (10061)" /tmp/.X11-unix への書き込み権が無いときに見かけたような… ちなみにパスワードは vncpasswd で作成します。 vncserver の初回実行時に設定したパスワードでよければ $HOME/.vnc の中に有ると思います。

momochangeni
質問者

お礼

/etc/inetd.conf と /etc/services の両方のファイルを完全に削除して、バックアップのファイルから新たにやり直して、/etc/inetd.conf の書き込みを下記のように変えてVNCしてみたところパスワードなしでいきなりサーバにアクセスできました。 .vnc-800x600x8 stream tcp nowait nobody /usr/local/bin/Xvnc Xvnc -inetd -query localhost -once -geometry 800x600 -depth 8 -cc 3 securitytypes=none .vnc-1024x768x8 stream tcp nowait nobody /usr/local/bin/Xvnc Xvnc -inetd -query localhost -once -geometry 1024x768 -depth 8 -cc 3 securitytypes=none しかし、画面が灰色で空っぽの状態でGNOMEが立ち上がっていません。 プロセスを見ても gnome-session が見当たりませんでした。 どなたかアドバイスお願いいたします。

momochangeni
質問者

補足

asdf24 様  どうもありがとうございます。 1. chmod o+w /tmp/.X11-unix を実行して、なおかつ /usr/dt/config/Xsetup と /etc/dt/config/Xsetup の両方のファイルにこのコマンドが書き込まれている事を再確認しましたが、/etc/inetd.conf から securitytypes=none を削除した後もVNC接続が Connection refused (10061) のエラーになってしまいます。 securitytypes=none を書き足す前はNo password configured for VNC Auth だったのですが。 参考になるか分かりませんが、サーバでVNCを起動してログファイル //.vnc/dcnetlab:1.log を開けて見たところ下記のような記述を見つけました。 ローカルでVNCを起動後は :1 でVNCできます。 このファイルを開けるのはこれが初めてなのでsecuritytypes=none の前はどうだったか分からないのですが。 error opening security policy file /usr/openwin/lib/X11/xserver/SecurityPolicy Warning: program compiled against libxml 205 using older 204 この/usr/openwin/lib/X11/xserver/SecurityPolicy ファイルを探しましたが、/usr/openwin/lib/X11/ までしか存在しませんでした。 Security の書き込みによって何か他の設定も変わってしまったのでしょうか? 2. そしてnowait nobody から wait root に変更して passwordFile=$HOME/.vnc/passwd を足して実行しましたが、やはり"unable to connect to host: Connection refused (10061)" でだめでした。 3. それともう一つ、/etc/inetd.conf 内のVNCの記述はgnome-sessionを立ち上げるのに役立っているのでしょうか? ローカルでVNC起動時はgnome-sessionのプロセスを見ることができますが、inetdからの場合は(securitytypes=none問題の以前)Xvnc –inetd のプロセスしか見られませんでした。 リモートからVNCの場合、なにがgnome-session をスタートさせる役割を果たしているのか、ログインをコントロールしているのが何なのかが分かりません。 どうか宜しくお願いします。

  • asdf24
  • ベストアンサー率54% (27/50)
回答No.1

VNC4.0のマニュアルからそれっぽいのをコピペ 5950 stream tcp nowait nobody /usr/local/bin/Xvnc Xvnc -inetd -query local-host -once securitytypes=none 5951 stream tcp wait james /usr/local/bin/Xvnc Xvnc -inetd -query localhost -once passwordFile=/home/james/.vnc/passwd securitytypes=noneを設定するかパスワードファイルを指定すればいけそうな感じです。

momochangeni
質問者

補足

ありがとうございます。 早速やってみました。パスワードファイルはどこにあるのか分からないので、とりあえず securitytypes=none を下記のように付け足してやってみました。 しかしだめでした。変更後はエラーが "unable to connect to host: Connection refused (10061)" に変わってました。 # ps -ef で見てもそれらしいプロセスはありませんでした。 そしてファイルを元に戻したのですが、それでも同じエラーになってしまい VNC のプロセスが起動してないようです。 どこがいけないのでしょうか? 宜しくお願いします。 /etc/inetd.conf 変更前: ・vnc-800x600x8 stream tcp nowait nobody /usr/local/bin/Xvnc Xvnc -inetd -query 10.10.10.1 -once -geometry 800x600 -depth 8 -cc 3 ・vnc-1024x768x8 stream tcp nowait nobody /usr/local/bin/Xvnc Xvnc -inetd -query 10.10.10.1 -once -geometry 1024x768 -depth 8 -cc 3 変更後: ・vnc-800x600x8 stream tcp nowait nobody /usr/local/bin/Xvnc Xvnc -inetd -query 10.10.10.1 -once securitytypes=none -geometry 800x600 -depth 8 -cc 3 ・vnc-1024x768x8 stream tcp nowait nobody /usr/local/bin/Xvnc Xvnc -inetd -query 10.10.10.1 -once securitytypes=none -geometry 1024x768 -depth 8 -cc 3 また、# PATH=/usr/sbin:/usr/bin:/usr/local/bin:/usr/openwin/bin とやって # /usr/local/bin/vncserver で Xvnc :1 -desktop  が起動します。 そして10.10.10.1:1 とroot パスワードのみでログインできます。 この変更で正しいのでしょうか? よろしくお願いします。