it-swarm.com.de

Wie man die xstartup-Datei für TightVNC in der Ubuntu VPS GNOME-Umgebung richtig konfiguriert

Ich würde gerne auf meine Ubuntu 16.10 VPS (Contabo) zugreifen, indem ich eine GNOME-Umgebung mit VNC verwende. Allerdings habe ich immer noch Probleme, die ich bisher nicht lösen konnte. Zur Installation und Konfiguration der Software habe ich folgende Befehle ausgeführt:

Sudo apt-get install ubuntu-gnome-desktop
Sudo apt-get install tightvncserver xtightvncviewer tightvnc-Java
Sudo locale-gen de_DE.UTF-8
Sudo apt-get install xfonts-75dpi
Sudo apt-get install xfonts-100dpi
Sudo apt-get install gnome-panel
Sudo apt-get install metacity
Sudo apt-get install light-themes
touch ~/.Xresources
vncpasswd

Die Datei ~/.vnc/xstartup enthält zunächst folgende Zeilen:

#!/bin/sh
xrdb $HOME/.Xresources 
xsetroot -solid grey
#x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#x-window-manager &
# Fix to make GNOME work 
export XKL_XMODMAP_DISABLE=1 
/etc/X11/Xsession

Wenn ich den VNC-Server mit vncserver -geometry 1920x1200 starte, sieht alles entsprechend der Protokolldatei in ~/.vnc aus.

17/02/17 11:47:48 Xvnc version TightVNC-1.3.10
17/02/17 11:47:48 Copyright (C) 2000-2009 TightVNC Group
17/02/17 11:47:48 Copyright (C) 1999 AT&T Laboratories Cambridge
17/02/17 11:47:48 All Rights Reserved.
17/02/17 11:47:48 See http://www.tightvnc.com/ for information on TightVNC
17/02/17 11:47:48 Desktop name 'X' (Host:1)
17/02/17 11:47:48 Protocol versions supported: 3.3, 3.7, 3.8, 3.7t, 3.8t
17/02/17 11:47:48 Listening for VNC connections on TCP port 5901
17/02/17 11:47:48 Listening for HTTP connections on TCP port 5801

Ich kann erfolgreich von meinem Windows-PC über VNCViewer eine Verbindung herstellen und ein graues Fenster sehen.

Was mir nicht klar ist, ist das, was ich in ~/.vnc/xstartup ändern muss, um Gnome zum Laufen zu bringen. Ich habe viele verschiedene Einstellungen ausprobiert.

Z.B. wenn ich xstartup in umstelle

#!/bin/sh

xrdb $HOME/.Xresources
xsetroot -solid grey
x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#x-window-manager &

# Fix to make GNOME work
export XKL_XMODMAP_DISABLE=1
/etc/X11/Xsession

#gnome-session &
gnome-panel &
gnome-settings-daemon &
metacity &
nautilus &

und über VNC verbinden, bekomme ich die folgenden Fehlermeldungen in der VNC-Protokolldatei:

17/02/17 14:13:09 Xvnc version TightVNC-1.3.10
17/02/17 14:13:09 Copyright (C) 2000-2009 TightVNC Group
17/02/17 14:13:09 Copyright (C) 1999 AT&T Laboratories Cambridge
17/02/17 14:13:09 All Rights Reserved.
17/02/17 14:13:09 See http://www.tightvnc.com/ for information on TightVNC
17/02/17 14:13:09 Desktop name 'X' (Host:1)
17/02/17 14:13:09 Protocol versions supported: 3.3, 3.7, 3.8, 3.7t, 3.8t
17/02/17 14:13:09 Listening for VNC connections on TCP port 5901
17/02/17 14:13:09 Listening for HTTP connections on TCP port 5801
17/02/17 14:13:09   URL http://5801

(nautilus:7807): Gtk-WARNING **: Failed to register client: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any .service files
metacity-Message: could not find XKB extension.
Window manager warning: Missing composite extension required for compositing

(gnome-settings-daemon:7805): rfkill-plugin-WARNING **: Could not open RFKILL control device, please verify your installation

** (gnome-panel:7804): WARNING **: Failed to register client: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any .service files

(nautilus:7807): Gtk-WARNING **: Theme parsing error: <broken file>:1:0: Failed to import: The resource at '/org/gnome/libgd/tagged-entry/default.css' does not exist
Xlib:  extension "XInputExtension" missing on display ":1".
Xlib:  extension "XInputExtension" missing on display ":1".
Xlib:  extension "XInputExtension" missing on display ":1".
Xlib:  extension "XInputExtension" missing on display ":1".
Xlib:  extension "XInputExtension" missing on display ":1".
Xlib:  extension "XInputExtension" missing on display ":1".

(gnome-settings-daemon:7805): media-keys-plugin-WARNING **: Unable to inhibit keypresses: GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: Permission denied

** (gnome-settings-daemon:7805): WARNING **: Unable to register client: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any .service files

** (process:7845): WARNING **: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any .service files

(gnome-settings-daemon:7805): GLib-GIO-CRITICAL **: g_task_return_error: assertion 'error != NULL' failed
Xlib:  extension "XInputExtension" missing on display ":1".
Xlib:  extension "XInputExtension" missing on display ":1".

(gnome-settings-daemon:7805): sharing-plugin-WARNING **: Failed to StopUnit service: GDBus.Error:org.freedesktop.systemd1.NoSuchUnit: Unit rygel.service not loaded.
Xlib:  extension "XInputExtension" missing on display ":1".

(gnome-panel:7804): Gtk-WARNING **: Allocating size to PanelToplevel 0x55e8b9e1fba0 without calling gtk_widget_get_preferred_width/height(). How does the code know the size to allocate?
Xlib:  extension "XInputExtension" missing on display ":1".
Nautilus-Share-Message: Called "net usershare info" but it failed: Failed to execute child process "net" (No such file or directory)
Xlib:  extension "XInputExtension" missing on display ":1".

Und das kann ich mit VNCViewer sehen:  enter image description here

Bisher konnte ich die Probleme in der Protokolldatei nicht beheben. Vielen Dank für Ihre Hilfe.

UPDATE 1

Wenn ich ~/.vnc/xstartup gemäß UPDATE 2 von muktupavels antworte, sieht meine Protokolldatei folgendermaßen aus, wenn ich mich über vncviewer verbinde:

21/02/17 08:51:52 Xvnc version TightVNC-1.3.10
21/02/17 08:51:52 Copyright (C) 2000-2009 TightVNC Group
21/02/17 08:51:52 Copyright (C) 1999 AT&T Laboratories Cambridge
21/02/17 08:51:52 All Rights Reserved.
21/02/17 08:51:52 See http://www.tightvnc.com/ for information on TightVNC
21/02/17 08:51:52 Desktop name 'X' (Host:1)
21/02/17 08:51:52 Protocol versions supported: 3.3, 3.7, 3.8, 3.7t, 3.8t
21/02/17 08:51:52 Listening for VNC connections on TCP port 5901
21/02/17 08:51:52 Listening for HTTP connections on TCP port 5801
21/02/17 08:51:52   URL http://Host:5801

21/02/17 08:51:58 Got connection from client xxx
21/02/17 08:51:58 Using protocol version 3.8
21/02/17 08:52:03 Full-control authentication passed by xxx
21/02/17 08:52:04 rfbProcessClientNormalMessage: ignoring unknown encoding 16
21/02/17 08:52:04 rfbProcessClientNormalMessage: ignoring unknown encoding 22
21/02/17 08:52:04 rfbProcessClientNormalMessage: ignoring unknown encoding 21
21/02/17 08:52:04 rfbProcessClientNormalMessage: ignoring unknown encoding 15
21/02/17 08:52:04 Using zlib encoding for client xxx
21/02/17 08:52:04 rfbProcessClientNormalMessage: ignoring unknown encoding -314
21/02/17 08:52:04 Enabling full-color cursor updates for client xxx
21/02/17 08:52:04 rfbProcessClientNormalMessage: ignoring unknown encoding -223
21/02/17 08:52:04 Pixel format for client xxx:
21/02/17 08:52:04   8 bpp, depth 8
21/02/17 08:52:04   uses a colour map (not true colour).
21/02/17 08:52:04 Using raw encoding for client xxx
21/02/17 08:52:04 rfbProcessClientNormalMessage: ignoring unknown encoding 22
21/02/17 08:52:04 rfbProcessClientNormalMessage: ignoring unknown encoding 21
21/02/17 08:52:04 rfbProcessClientNormalMessage: ignoring unknown encoding 16
21/02/17 08:52:04 rfbProcessClientNormalMessage: ignoring unknown encoding 15
21/02/17 08:52:04 rfbProcessClientNormalMessage: ignoring unknown encoding -314
21/02/17 08:52:04 Enabling full-color cursor updates for client 141.83.54.107
21/02/17 08:52:04 rfbProcessClientNormalMessage: ignoring unknown encoding -223
21/02/17 08:52:04 rfbProcessClientNormalMessage: ignoring unknown encoding 15
21/02/17 08:52:04 Using hextile encoding for client xxx
21/02/17 08:52:04 rfbProcessClientNormalMessage: ignoring unknown encoding 22
21/02/17 08:52:04 rfbProcessClientNormalMessage: ignoring unknown encoding 21
21/02/17 08:52:04 rfbProcessClientNormalMessage: ignoring unknown encoding 16
21/02/17 08:52:04 rfbProcessClientNormalMessage: ignoring unknown encoding -314
21/02/17 08:52:04 Enabling full-color cursor updates for client 141.83.54.107
21/02/17 08:52:04 rfbProcessClientNormalMessage: ignoring unknown encoding -223
21/02/17 08:52:04 Pixel format for client xxx:
21/02/17 08:52:04   32 bpp, depth 24, little endian
21/02/17 08:52:04   true colour: max r 255 g 255 b 255, shift r 16 g 8 b 0
21/02/17 08:52:04   no translation needed
21/02/17 08:52:08 KbdAddEvent: unknown KeySym 0xffeb - allocating KeyCode 89

Dies ist ein Screenshot der GUI:  enter image description here

Jetzt ist die Uhr usw. auf der Oberseite sichtbar. Der Desktop ist jedoch immer noch grau und der rechte Mausklick funktioniert nicht. 

Auch einige Anwendungen wie das GNOME-Terminal starteten zunächst nicht. Beim Versuch, das Terminal mit xterm zu starten, wurde folgende Fehlermeldung angezeigt:

Error constructing proxy for org.gnome.Terminal:/org/gnome/Terminal/Factory0: Error calling StartServiceByName for org.gnome.Terminal: GDBus.Error:org.freedesktop.DBus.Error.TimedOut: Failed to activate service 'org.gnome.Terminal': timed out

Nach dem Ausführen der folgenden Befehle und einem Neustart funktionieren das GNOME-Terminal und alle anderen Programme: 

Sudo locale-gen
Sudo localectl set-locale LANG="en_US.UTF-8"
Sudo reboot

UPDATE 3

--debug-Parameter zu gnome-session cmd in ~/.vnc/xstartup hinzugefügt. Nach dem Neustart von vncserver erhielt ich die folgende Meldung in ~/.xsession-errors:

Xsession: X session started for <user> at Di 21. Feb 08:35:01 CET 2017
dbus-update-activation-environment: setting DISPLAY=:1
dbus-update-activation-environment: warning: error sending to systemd: org.freedesktop.DBus.Error.Spawn.ChildExited: Process org.freedesktop.systemd1 exited with status 1
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  109 (X_ChangeHosts)
  Value in failed request:  0x5
  Serial number of failed request:  6
  Current serial number in output stream:  8
localuser:<user> being added to access control list
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  109 (X_ChangeHosts)
  Value in failed request:  0x5
  Serial number of failed request:  6
  Current serial number in output stream:  8
openConnection: connect: No such file or directory
cannot connect to braille devices daemon brltty at :0
Incompatible XKB server support
dbus-update-activation-environment: setting GTK_MODULES=gail:atk-bridge
dbus-update-activation-environment: warning: error sending to systemd: org.freedesktop.DBus.Error.Spawn.ChildExited: Process org.freedesktop.systemd1 exited with status 1
dbus-update-activation-environment: setting QT_ACCESSIBILITY=1
dbus-update-activation-environment: setting QT_LINUX_ACCESSIBILITY_ALWAYS_ON=1
dbus-update-activation-environment: warning: error sending to systemd: org.freedesktop.DBus.Error.Spawn.ChildExited: Process org.freedesktop.systemd1 exited with status 1
Error: couldn't find RGB GLX visual or fbconfig
OpenGL version not found.
dbus-update-activation-environment: setting LESSOPEN=| /usr/bin/lesspipe %s
dbus-update-activation-environment: setting VNCDESKTOP=X
dbus-update-activation-environment: setting MAIL=/var/mail/<user>
dbus-update-activation-environment: setting SSH_CLIENT=xx.xxx.xx.xx 54876 22
dbus-update-activation-environment: setting USER=<user>
dbus-update-activation-environment: setting LANGUAGE=en_US:
dbus-update-activation-environment: setting LC_TIME=de_DE.UTF-8
dbus-update-activation-environment: setting SHLVL=1
dbus-update-activation-environment: setting HOME=/home/<user>
dbus-update-activation-environment: setting OLDPWD=/home/<user>/.vnc
dbus-update-activation-environment: setting SSH_TTY=/dev/pts/0
dbus-update-activation-environment: setting GTK_MODULES=gail:atk-bridge
dbus-update-activation-environment: setting QT_LINUX_ACCESSIBILITY_ALWAYS_ON=1
dbus-update-activation-environment: setting LC_MONETARY=de_DE.UTF-8
dbus-update-activation-environment: setting DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-x72bVPIADb,guid=db78e03690370c91adb4424458abeda5
dbus-update-activation-environment: setting IM_CONFIG_PHASE=1
dbus-update-activation-environment: setting LOGNAME=<user>
dbus-update-activation-environment: setting _=/usr/bin/vncserver
dbus-update-activation-environment: setting TERM=xterm
dbus-update-activation-environment: setting PATH=/home/<user>/bin:/home/<user>/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
dbus-update-activation-environment: setting LC_ADDRESS=de_DE.UTF-8
dbus-update-activation-environment: setting XDG_RUNTIME_DIR=/run/user/1000
dbus-update-activation-environment: setting DISPLAY=:1
dbus-update-activation-environment: setting LC_TELEPHONE=de_DE.UTF-8
dbus-update-activation-environment: setting LANG=en_US
dbus-update-activation-environment: setting XKL_XMODMAP_DISABLE=1
dbus-update-activation-environment: setting LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.Zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.Zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:
dbus-update-activation-environment: setting Shell=/bin/bash
dbus-update-activation-environment: setting Shell=/bin/bash
dbus-update-activation-environment: setting LC_NAME=de_DE.UTF-8
dbus-update-activation-environment: setting QT_ACCESSIBILITY=1
dbus-update-activation-environment: setting LESSCLOSE=/usr/bin/lesspipe %s %s
dbus-update-activation-environment: setting LC_MEASUREMENT=de_DE.UTF-8
dbus-update-activation-environment: setting LC_IDENTIFICATION=de_DE.UTF-8
dbus-update-activation-environment: setting PWD=/home/<user>
dbus-update-activation-environment: setting SSH_CONNECTION=xx.xxx.xx.xx 54876 xx.xxx.xx.xx 22
dbus-update-activation-environment: setting XDG_DATA_DIRS=/usr/share/gnome:/usr/local/share/:/usr/share/:/var/lib/snapd/desktop
dbus-update-activation-environment: setting LC_NUMERIC=de_DE.UTF-8
dbus-update-activation-environment: setting LC_PAPER=de_DE.UTF-8
dbus-update-activation-environment: warning: error sending to systemd: org.freedesktop.DBus.Error.Spawn.ChildExited: Process org.freedesktop.systemd1 exited with status 1
3
Matthias Munz

Ihre vnc-Protokolldatei informiert Sie über das Problem. Sie müssen einige Pakete installieren:
Sudo apt-get install metacity gnome-panel

UPDATE 1:  

Sie benötigen nur x-window-manager oder metacity. Beide bieten einen Fenstermanager und Sie benötigen nur einen. Vom Screenshot sehe ich nur zwei Probleme - grauer Bildschirm und fehlende Indikatoren.

Um fehlende Indikatoren zu beheben, installieren Sie ein weiteres Paket:
Sudo apt-get install indicator-applet-complete

Um den grauen Bildschirm zu korrigieren, benötigen Sie die --force-desktop-Befehlszeilenoption. Und wenn Sie kein Standard-Nautilus-Fenster wünschen, können Sie --no-default-window hinzufügen:
nautilus --force-desktop & oder nautilus --force-desktop --no-default-window

Auch GNOME Flashback (Metacity) session in Ubuntu 16.10 verwendet unity-settings-daemon nicht gnome-settings-daemon. Vergessen Sie nicht, es zu installieren, wenn Sie das ändern möchten.

Um besser arbeiten zu können, müssen Sie auch exportieren:

export XDG_CURRENT_DESKTOP="GNOME-Flashback:GNOME"
export XDG_MENU_PREFIX="gnome-flashback-"

Wenn Sie sich für unity-settings-daemon entschieden haben, sollte XDG_CURRENT_DESKTOPGNOME-Flashback:Unity sein.

In beiden Fällen benötigen Sie auch gnome-flashback. Installieren Sie es und stellen Sie sicher, dass es auch gestartet ist. Abhängig vom Einstellungs-Daemon müssen Sie möglicherweise die GS-Einstellungen anpassen/ändern. Die Standardeinstellungen sind für unity-settings-daemon konfiguriert.

UPDATE 2:  

Ich würde wahrscheinlich gnome-session die Session starten lassen:

#!/bin/sh

xrdb $HOME/.Xresources
xsetroot -solid grey

export XKL_XMODMAP_DISABLE=1
export XDG_CURRENT_DESKTOP="GNOME-Flashback:Unity"
export XDG_MENU_PREFIX="gnome-flashback-"

gnome-session --session=gnome-flashback-metacity --disable-acceleration-check &

Um die erforderlichen Pakete zu installieren, machen Sie einfach Sudo apt-get install gnome-session-flashback

UPDATE 3:  

Sieht aus, als würde Nautilus keine Desktopsymbole und Hintergrund anzeigen, da Desktopsymbole deaktiviert sind.

Sie können es mit gsettings set org.gnome.desktop.background show-desktop-icons true aktivieren oder ubuntu-settings installieren.

3
muktupavels

Aus Sicherheitsgründen hat X11 das indirekte GLX-Rendering standardmäßig deaktiviert. Diese Änderung hat es endlich zu den Mainstream-Linux-Varianten gemacht. Um IGLX zu aktivieren, bearbeiten Sie die Xorg-Datei und fügen Sie das Flag "+ iglx" hinzu. Starten Sie dann die Maschine neu.

Sudo vi /usr/bin/Xorg

basedir=/usr/lib/xorg
if [ -x "$basedir"/Xorg.wrap ]; then
   exec "$basedir"/Xorg.wrap "[email protected]"
else
   exec "$basedir"/Xorg "[email protected]" +iglx
fi
0
Engineer

Ich hatte das gleiche Problem. Ich habe alle diese Anweisungen befolgt ... außer Debug und der VNC hat angefangen zu arbeiten. Ich benutze mein Ubuntu-System als Headless-System und zu 99% VNC. 

Ich habe heute ein BIOS-Update und einen Neustart durchgeführt und das gleiche Problem erneut festgestellt. Ich weiß, dass ich bereits alles installiert habe, aber das einzige, was dies zum Laufen brachte, war, diese Befehle erneut auszuführen:

Sudo locale-gen
Sudo localectl set-locale LANG="en_US.UTF-8"
vncserver -kill :1
vncserver

VNC Viewer geöffnet und ohne Probleme verbunden.

0
Uber Geek Dude