VNC server started from KDM

I’d like to configure for a short while my machine (running Suse 9.2) to run a VNC server which displays a login prompt when called by a VNC viewer. The rationale is that I’m getting a new machine with Suse 11.x, I will connect it to the monitor my old machine is currently using, and I would access an X session on old machine from a fvwm desktop on the new machine so I can easily use both during the transition.

I did a similar exercise 5 years ago (at the time the VNC server ran on a Tru64 DEC Alpha with xdm, and the VNC client on the present Suse 9.2 machine).

I can start the VNC server manually with /usr/bin/X11/vncserver :1 -rfbwait 120000 -depth 8 -geometry 1268x1024 -rfbauth ~/.vnc/passwd

Of course when I connect to it with vncviewer -name OldVNC -passwd ~/.vnc/passwd it executes a ~/.vnc/xstartup which is inconvenient (but the connection works). I want to obtain instead an X login window so that I can start a full fledged X session.

I thought that in order to do that I’d have to do something like that :

  1. write the appropriate server invocation in the appropriate Xservers file
  2. issue /etc/init.d/xdm reload

1.1) which is the appropriate Xservers file ? I found there are /opt/kde3/share/config/kdm/Xservers and /etc/X11/xdm/Xservers. I suppose the latter is the right one, because if I put something there, I get an error “X server died during startup” in /var/log/messages

1.2) which is the appropriate invocation ? I guess something
:1 local EXECUTABLE :1 -rfbwait 120000 -depth 8 -geometry 1268x1024 -rfbauth PASSWD

  • what should I use as EXECUTABLE ? /usr/bin/X11/vncserver or /usr/X11R6/bin/Xvnc ? I guess the latter since the former gives an error ‘vncserver: couldn’t find “xauth” on your PATH’ in /var/log/kdm.log ’

  • what should I use as PASSWD ? Since my ~/.vnc/passwd is owned by me and not readable for the world, I put a copy, owned and readable by root, in /.vnc/passwd

  • can I use display :1 if I comment existing “reserve” entries for it ? or should I use display :6 ?

  • Shall I use the local@ttyn notation ?

I presently have put there
:6 local /usr/X11R6/bin/Xvnc :6 -rfbauth /.vnc/

I get a X server died during startup in /var/log/messages, while in /var/log/kdm.log I get an error “Unrecognized option: vt13” followed by the output of Xvnc -help.

Note that “vt13” does not appear at all in the body of the Xservers file which I include here but for the comments (I inserted the 2nd line in a standard Suse file)

:0 local /usr/X11R6/bin/X -nolisten tcp -br vt7
:6 local /usr/X11R6/bin/Xvnc :6 -rfbauth /.vnc/passwd
:1 local reserve /usr/X11R6/bin/X -nolisten tcp -br :1 vt8
:2 local reserve /usr/X11R6/bin/X -nolisten tcp -br :2 vt9
:3 local reserve /usr/X11R6/bin/X -nolisten tcp -br :3 vt10
:4 local reserve /usr/X11R6/bin/X -nolisten tcp -br :4 vt11
:5 local reserve /usr/X11R6/bin/X -nolisten tcp -br :5 vt12

What’s wrong ?