Centos – “Oh no! Something has gone wrong.” What am I doing wrong with the default CentOS VNC configuration

centosvnc

I'm trying to configure a little PC settop for work that will mostly be used as a remote backup server (basically just something that exists for the extremely remote possibility that our data center disappears in the rapture) at my employer's home. I'm using a NUC5CPYH with CentOS 7. It's got a 2TB laptop hard drive and 8 GB of RAM. I installed from the minimal CD, added GNOME. Updated to today's repos with yum upgrade.

Basically, the relevant extent of my configuration can be found here. Other than shell utilities I like (e.g., tmux) I haven't added much else that didn't come along with the commands:

yum -y groups install "GNOME Desktop"
yum install vnc-server

My biggest deviation from that howtoforge instruction method is my exec line set VNC to display at 1024×768:

ExecStart=/usr/sbin/runuser -l <user> -c "/usr/bin/vncserver %i -geometry 1024x768"

(where <user> is obviously the right username)

I wanted one remote desktop user, my employer, who would be able to access it remotely if ever necessary. Mostly that would just be on his home LAN. The intended X display is :1.

By and large everything I've tried works beautifully except remote desktop. GNOME works fine locally. However, when I try to VNC in several problems occur.

Problem 1

I can't see the mouse cursor at any time when I VNC in. It's obviously responding to mouse input. I just can't see the cursor in the client.

Problem 2

This error message taking up the whole tigervnc client window saying "Oh no! Something has gone wrong. A problem has occurred and the system can't recover. Please log out and try again." Very helpful, thank you. "Oh no! Something has gone wrong. A problem has occurred and the system can't recover. Please log out and try again."

Per Problem 1, I can hit that "Log Out" button even though I have to hover around until I find it with the mouse cursor. Once I hit it, the screen looks like: What happens after I close the error message

At this point, I can repeat the process by restarting the VNC server with systemctl.

Other details

uname -a output:

Linux [REDACTED].[REDACTED] 3.10.0-327.22.2.el7.x86_64 #1 SMP Thu Jun 23 17:05:11 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

The configuration file /etc/systemd/system/vncserver@:1.service looks like:

[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=forking
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/sbin/runuser -l <USER> -c "/usr/bin/vncserver %i -geometry 1024x768"
PIDFile=/home/<USER>/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'

[Install]
WantedBy=multi-user.target

I'm assuming this doesn't matter, but I'm using tigervnc client on my home desktop running ArchLinux to access this.

Best Answer

I use xrdp with some success on my Centos and Debian boxes. That way you won't rely on (not-uptodate) VNC-Client-Software.

In this Tutorial you will also find firewall and SELinux settings for an installation of xrdp on Centos 7.