Hello RPi SE community,

I followed this post (i.a.) from the official forum to install an X server on my Raspberry Pi Arch Linux: https://www.raspberrypi.org/forums/viewtopic.php?t=26398

$ pacman -Syu
$ pacman -S xorg-server
$ pacman -S xf86-video-fbdev xf86-video-vesa
$ pacman -S xfce4
$ pacman -S x11vnc

This installs me the server, drivers and a desktop environment, that worked.

Then I tried different things for starting the server:

  • Creating an .xinitrc file
  • startxfce4 (as service, with disown, etc.)
  • ...

However, any command that I tried with x11vnc failed.

$ x11vnc -usepw -forever -display :0

07/07/2021 13:14:29 -usepw: found /home/h0ch5tr4355/.vnc/passwd 07/07/2021 13:14:29 x11vnc version: 0.9.16 lastmod: 2019-01-05 pid: 58024 07/07/2021 13:14:29 XOpenDisplay(":0") failed. 07/07/2021 13:14:29 Trying again with XAUTHLOCALHOSTNAME=localhost ...

07/07/2021 13:14:29 *************************************** 07/07/2021 13:14:29 *** XOpenDisplay failed (:0)

*** x11vnc was unable to open the X DISPLAY: ":0", it cannot continue. *** There may be "Xlib:" error messages above with details about the failure.

Some tips and guidelines:

** An X server (the one you wish to view) must be running before x11vnc is started: x11vnc does not start the X server. (however, see the -create option if that is what you really want).

** You must use -display , -OR- set and export your $DISPLAY environment variable to refer to the display of the desired X server.

  • Usually the display is simply ":0" (in fact x11vnc uses this if you forget to specify it), but in some multi-user situations it could be ":1", ":2", or even ":137". Ask your administrator or a guru if you are having difficulty determining what your X DISPLAY is.

** Next, you need to have sufficient permissions (Xauthority) to connect to the X DISPLAY. Here are some Tips:

  • Often, you just need to run x11vnc as the user logged into the X session. So make sure to be that user when you type x11vnc.
  • Being root is usually not enough because the incorrect MIT-MAGIC-COOKIE file may be accessed. The cookie file contains the secret key that allows x11vnc to connect to the desired X DISPLAY.
  • You can explicitly indicate which MIT-MAGIC-COOKIE file should be used by the -auth option, e.g.: x11vnc -auth /home/someuser/.Xauthority -display :0 x11vnc -auth /tmp/.gdmzndVlR -display :0 you must have read permission for the auth file. See also '-auth guess' and '-findauth' discussed below.

** If NO ONE is logged into an X session yet, but there is a greeter login program like "gdm", "kdm", "xdm", or "dtlogin" running, you will need to find and use the raw display manager MIT-MAGIC-COOKIE file. Some examples for various display managers:

 gdm:     -auth /var/gdm/:0.Xauth
          -auth /var/lib/gdm/:0.Xauth
 kdm:     -auth /var/lib/kdm/A:0-crWk72
          -auth /var/run/xauth/A:0-crWk72
 xdm:     -auth /var/lib/xdm/authdir/authfiles/A:0-XQvaJk
 dtlogin: -auth /var/dt/A:0-UgaaXa

Sometimes the command "ps wwwwaux | grep auth" can reveal the file location.

Starting with x11vnc 0.9.9 you can have it try to guess by using:

          -auth guess

(see also the x11vnc -findauth option.)

Only root will have read permission for the file, and so x11vnc must be run as root (or copy it). The random characters in the filenames will of course change and the directory the cookie file resides in is system dependent.

See also: http://www.karlrunge.com/x11vnc/faq.html

Now my questions is if anybody can provide a clean solution for running a VNC Server on a Raspberry Pi with Arch Linux, that is only accessible via SSH. (The programs, that I have installed are no requirements. Feel free to call any other software. Thanks in advance.)

  • I haven't used Arch Linux so far but it seems to be an issue with selecting the correct DISPLAY for output. What ssh command do you use?
    – Ingo
    Jul 8, 2021 at 8:17
  • Just ssh user@alarm. Do I have to use -x even to start an Xserver remotely? Jul 8, 2021 at 13:57
  • Where is the display connected? At the remote RasPi alarm?
    – Ingo
    Jul 8, 2021 at 21:17
  • I have no display, just a VNC server. Jul 9, 2021 at 7:19
  • An X-Server is used to manage input/output to/from keyboard/mouse/display. Where is the X-Server running and what display does it manage?
    – Ingo
    Jul 9, 2021 at 8:11


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.

Browse other questions tagged or ask your own question.