6

I am on xubuntu 14.04.04, and have successfully managed to get a VNC server up and running with SSH tunneling and such. However, I'm experiencing an issue with the VNC server, x11vnc 0.9.13. Currently, I have the following command execute on start up:

x11vnc -shared -forever -bg -auth guess

The -auth guess part uses x11vnc -findauth to automatically find the correct XAUTHORITY file, which on my system appears to be /var/run/lightdm/root/:0.

Here is the issue I am experiencing: the VNC setup works as expected until the lock screen appears (either when I manually lock the desktop, or an inactivity timeout occurs). When the lock screen appears, the VNC server displays the contents of the desktop just before the timeout occurs, a sort of still-frame or snapshot, and all input from my VNC client is ignored. I am unable to unlock it and return to my desktop from within the VNC client; I must use the remote system's keyboard and monitor. After it has been unlocked non-remotely, the VNC works as expected, until the screen lock appears again.

A few things I should mention:

  • I am able to select my user account and login from the account login screen without any issues over VNC, but when the desktop is locked, the issue occurs and I cannot unlock it.
  • The command sudo x11vnc -findauth returns XAUTHORITY=/var/run/lightdm/root/:0 only while I'm on the initial login screen after I first boot up. After I login, the same command returns XAUTHORITY=, whether I'm on my desktop or the screen is locked.
2
  • You could try to run x11vnc on gdm/lightdm: askubuntu.com/questions/25189/…
    – Takkat
    Mar 26, 2016 at 10:36
  • @Takkat Looks like my current configuration is already pretty similar to the answer you gave in the question you linked. I'll update my question with some more info on what I have tried and what my issue is.
    – drdrez
    Mar 26, 2016 at 15:10

3 Answers 3

5

light-locker switches to :1 when locking, so that explains why the vnc server running on :0 only sees a black screen.

The workaround is simply to start another vnc server at :1, connect to it, enter password, and go back to the original vnc connection at :0

x11vnc -auth /var/run/lightdm/root/\:1 -display :1
3
  • This worked for me, but only once I remembered to forward the port for the extra VNC server through the SSH tunnel I'm using (port 5901 in my case).
    – JRI
    May 4, 2021 at 18:08
  • Thanks for the explanation and the workaround! It works and makes sense. Mar 16, 2022 at 12:17
  • This isn't working for me in 22.10 and I'm certainly puzzled as to why since i can see the DISPLAY change on vt8 and I can start the vnc server on :1. My client, however, can't seem to pick anything up (even though it picks up the server fine on :0) Dec 31, 2022 at 7:34
3

Looks like theres a bug from 2014 which covers this:

https://bugs.launchpad.net/ubuntu/+source/light-locker/+bug/1287171

I ended up removing light-locker and installing xscreensaver, and now I no longer have any vnc issues.

0

The only thing which worked in my case is to (install and) use xscreensaver instead of xfce's Lock Screen option. Note that xscreensaver also allows to set a password after the screensaver became effective, giving you a similar level of security.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.