Grey Screen With X Cursor When Trying To VNC Into SLES
This document (3465100) is provided subject to the disclaimer at the end of this document.
Environment
SUSE Linux Enterprise Desktop 10
Situation
nobody's x11 desktop
Trying to set up Remote Administration
Resolution
- Make sure that all of the latest updates are applied--This fixes most issues tested so far.
- Make sure that the ports in the firewall are open (5800 and 5801 for a web browser and 5900 and 5901 for a VNC client)
- Make sure that remote administration is enabled under YaST: YaST > Network Services > Remote Administration
- Make sure that the desktop resolution on the server you are trying to remote into is set to something small to start. If it is to large of a setting, you will not be able to correctly VNC into the server.
-
As root, edit the /usr/X11R6/bin/vncserver file and change the DefaultXStartup section. Restart xinetd (rcxinetd restart) when finished. The DefaultXStartup section should look like the following (changes in bold):
-
Make sure that when typing the following command from a Linux system, that only one IP address is returned. If more than one is returned, correct DNS:
host <hostname>
defaultXStartup = ("#!/bin/sh\n\n". "xrdb \$HOME/.Xresources\n". "xsetroot -solid grey\n". "xterm -geometry 80x24+10+10 -ls -title \"\$VNCDESKTOP Desktop\"&\n". #"twm &\n"); "opt/kde3/bin/startkde&\n"); |
- It may be that YaST is not modifying the configuration file, if it thinks the file has been modified by something else. If you run 'SuSEconfig' manually, there may be errors displayed that do not show when run through YaST. Here's how to fix this situation:
- Backup your existing copy of/etc/opt/kde3/share/config/kdm/kdmrc
- If a file /etc/opt/kde3/share/config/kdm/kdmrc.SuSEconfig exists, you can copy that file to the kdmrc mentioned above.
- If the kdmrc.SuSEconfig does not exist, edit the kdmrc file and find the [Xdmcp] section. From there, find the "Enable" declaration. If it is set to false, change it to "Enable=true". Save& exit.
- Restarting xinetd and xdm should make the change take place. Restarting the server will also make the change take place.
- See the notes section for more information about this.
- Customers have reported success with the following (option 1):
1. usermod -s /bin/bash nobody
2. /etc/init.d/xinetd restart
3. /etc/init.d/xdm restart - Customers have reported success with the following (option 2):
1. YAST > SYSTEM > /etc/sysconfig > DISPLAYMANAGER_REMOTE_ACCESS = Yes - When using GDM edit /etc/opt/gnome/gdm.confand search for the section [XDMCP], change Enable=False to Enable=True, save the file and restart the displaymanager afterwards with rcxdm restart.
Please note that the rcxdm restart Command will terminate the current running X sessions and all programs. - /etc/sysconfig/displaymanager sets the option which login manager (KDM, GDM, XDM) will be used. Defaults are usually set to GDM or KDM. In case the VNC connection does not work, chaning DISPLAYMANAGER="GDM" to DISPLAYMANAGER="XDM" might help as well. Ensure the command 'SuSEconfig --module xdm && rcxdm restart' is executed after the file has been altered.
- This TID will be updated as troubleshooting continues.
Additional Information
Some technical details on how Remote Administration works:
YaST Remote Administration enables the vnc1 and vnchttpd1 service in xinetd. The configuration file is /etc/xinetd.d/vnc, which also controls vnc2, vnc3, and their corresponding vnchttpd services. This configuration file specifies the ports that are used (such as 5901). If the service is enabled, it will start the Xvnc program when a connection is made. The options passed to this tell it to look for an XDMCP connection on localhost (or the same computer). In order to get the graphical login, KDM must be configured to use XDMCP as well. On SUSE systems, the configuration file is/etc/opt/kde3/share/config/kdm/kdmrc. Other distributions have this in various places, the default location is/opt/kde3/share/config/kdm/kdmrc. In this file is a section[Xdmcp], with a setting for Enable. This is going to be true or false (some distros use 0 or 1). It needs to be enabled to get XDMCP to have the graphical login, which is what VNC passes on to the client.
Disclaimer
This Support Knowledgebase provides a valuable tool for SUSE customers and parties interested in our products and solutions to acquire information, ideas and learn from one another. Materials are provided for informational, personal or non-commercial use within your organization and are presented "AS IS" WITHOUT WARRANTY OF ANY KIND.
- Document ID:3465100
- Creation Date: 05-Nov-2007
- Modified Date:25-Feb-2021
-
- SUSE Linux Enterprise Server
For questions or concerns with the SUSE Knowledgebase please contact: tidfeedback[at]suse.com