opensuse 13.2 ssh x11vnc kdm login problem

I use x11vnc tunnelled over ssh to login to remote systems. If nobody has yet logged in the X desktop from kdm, then I have used the following in the past (up through opensuse 13.1) to get the image of kdm so that a user and password can be specified and the desktop logged in.


ssh -t -l $REMOTEUSER -L 5900:localhost:5900 -p 22 $REMOTEIP "x11vnc -auth guess -shared -localhost -xkb -nolookup -nodpms -nopw -display :0"

Where the REMOTEUSER must be root since no other user is yet logged in to the desktop. The key parameter here is “-auth guess” and in systems prior to opensuse 13.2, x11vnc would find the correct X Auth file under
/var/lib/kdm/AuthFiles directory. A vncviewer could then be started and the userid and password typed into the kdm login fields to get the user logged into the KDE desktop.

On openSuSE 13.2, after entering the correct password for root, x11vnc exits with


24/06/2015 10:56:09 x11vnc version: 0.9.13 lastmod: 2011-08-10  pid: 3023
24/06/2015 10:56:20 -auth guess: failed for display=':0'
24/06/2015 10:56:20 -auth guess: since we are root, retrying with FD_XDM=1
24/06/2015 10:56:20 -auth guess: failed for display=':0'

If I login with a straight ssh session and perform a


ps wwwwaux | grep auth

to locate the name of the actual name of the auth file parameter specified on the /usr/bin/Xorg command and substitute that fully qualified filename with “-auth $filename” instead of “-auth guess” on the x11vnc invocation, then everything works as expected.

Am I missing some new parameter that is required for x11vnc when used in this configuration that was not required on prior releases of openSuSE?

This is on an openSuSE 13.2 32-bit new install with online updates applied.

I think you need to add “-X” option to ssh to forward display.

I finally resolved this problem. After doing an strace of the x11vnc (see above) invocation, it was observed that x11vnc was internally invoking “xdpyinfo” and that command was not found on the openSuSE 13.2 system. It is provided by the xdpyinfo package. I have never had to explicitly perform an installation of xdpyinfo on prior opensuse releases. That is, I am unsure if something changed in in opensuse group packaging that caused it to not be installed, or if it was something that I did differently during installation.

After installing xdpyinfo, the x11vnc invocation tunneled over ssh prior to any user yet being logged into the desktop works as expected without the error in my original description.