If X cannot come up and is broken:
If X is broken and the connection fails, most of the time it has this error messages:
_ FontTransSocketUNIXConnect: Can't connect: errno = 111 failed to set dafault font path 'unix:-1' Fatal server error: could not open default font 'fixed' |
This is likely due to xfs not finding the correct port for the Font Server or the font path is not set correctly! To resolve this, check steps 1 and 8 above. Make sure the configuration are pointing to (port) 7100 and make sure you have the following fonts installed (if not re-install the XFree86 font packages from your CD). Check the listing in XF86Config file (if you are using XFree86 4.x, the file is XF86Config-4) at /etc/X11:
FontPath "/usr/X11R6/lib/X11/fonts/75dpi/" FontPath "/usr/X11R6/lib/X11/fonts/misc/" FontPath "/usr/X11R6/lib/X11/fonts/CID/" FontPath "/usr/X11R6/lib/X11/fonts/Speedo/" FontPath "/usr/X11R6/lib/X11/fonts/100dpi/" FontPath "/usr/X11R6/lib/X11/fonts/Type1/" |
Use the command startx (on local) to restart the X server (or use telinit 5 to switch the run-level). To restart xfs, use the command in step 1.
I found out in my RH 7.3 that if my xfs is not setup, it will crash the Exceed connection if I use the GNOME. (Using KDE is fine and it does not affect my Mandrake GNOME). After I fix it and start up my xfs, it works fine!
If Exceed has no respond (in blank screen):
In this case, most likely your xdm (or gdm, depending upon which is used in /etc/inittab) is not starting correctly. Issue the command: ps -ef | grep gdm (or xdm or kdm, replace it in the command). Also, if your box has udp port turned on for XDMCP, you can type netstat -l | grep xdmcp and you should see this:
udp 0 0 *:xdmcp *:* |
If the process is not running, check the steps on the setup above (make sure there are no typo's and that the correct path is given). Restart X using the command telinit 5. If the udp port is not there for XDMCP, do step 2 as above.
Another possibilities are that your DNS setup is incorrect and/or firewall is enabled. An easy way to find out is simply ping or telnet your host and if the reply takes a long time, then that's DNS problem. If by using telnet and you got a "Connection Refused", then this is a firewall problem (assuming that you have your telnet daemon turned on already)! Check the section above for details how to resolve this.
PC Box with PPPoE (PPP over Ethernet):
A user using PPPoE told me that if you have PPPoE, you might experience problem using XDMCP. After uninstall it, he then is able to get XDMCP working. I personally do not have the environment to test this, so you can test it yourself.
Linux to Linux Display export:
If you are using another Linux with X, you do not need to use XDMCP to manage your display. You can actually export your display right from your X box. To do this, you must enable your access control to allow other to make connection to the X Server. The common error you will get without doing so are:
xlib: Connection refused (error 111): unable to connect to X server xlib: No such process (error 3): Server error |
To resolve the problem, use the command below:
$ xhost + $ export DISPLAY=(your local host IP):0.0 |
Always remember to enable access control by using the command "xhost -" again. One thing to remind you, you do not need this, if you are using PC as X-Terminal using XDMCP. This is only required when you have Linux to Linux or Linux to UNIX connection.
If you are using many Linux X boxes and you would like to setup the Chooser to pick from which X to login, you need to enable the following in the /etc/X11/gdm/gdm.conf:
[daemon] Chooser=/usr/bin/gdmchooser --disable-sound --disable-crash-dialog ... [xdmcp] Enable=1 HonorIndirect=1 |
I got a "Signal 11" error:
The "Signal 11" error, also called "Segmentation Fault", can sometimes be a problem of your hardware and/or software. If you have this problem in bring up the X Server, you need to fix it before configuring XDMCP. Unfortunately, there is no simple way to fix the problem due to many possible causes. For details, please check this SIG 11 while compiling the Kernel.