Copyright © 2001 Data Deliverance Pty Ltd
This README, patch and associated utility programs (if any) are released under the GNU Public License Version 2.
The symlink patch gives each user a separate /tmp directory. This can cause problems for things like X-windows that share files in /tmp. Below is a description of how to patch a normal RedHat 6.2 system to use X11 properly in conjunction with the patch. This should work, perhaps with slight modifications on other Linux systems. To make these changes, you may need to be in run level 3 or s rather than 5, which starts the X login system (which won't work after you have installed the patch). To do this on a standard system running lilo, enter this at the lilo: prompt:
When it asks you what run level you want, enter 3.
To get it working, you make a directory (/X11-tmp is used here, but it could be any other directory) to contain the shared files that X needs. To use any other directory, just substitute the name for /X11-tmp. Make sure that all users can access the directory that it is in (e.g. / in this case).
rm -rf /tmp/.X11-unix mkdir /X11-tmp chown gdm /X11-tmp chmod 700 /X11-tmp ln -s /X11-tmp /tmp/.X11-unix
This sets up things for root to run X and stick the socket where others can see it.
In /etc/X11/xdm/GiveConsole, put this after the other chown(s):chown $USER /X11-tmp chmod 700 /X11-tmp
and at the end put:
su - $USER -c 'ln -s /X11-tmp /tmp/.X11-unix' > /dev/null 2>&1
chown gdm /X11-tmp
This is important, and things will break if you leave this out, because the login window stuff is run as user gdm. If you want to clean up the link at the end of this file, you can put something like this (root still needs the link, as it's running the X server) :
if [ x$USER != xroot ]; then su - $USER -c '/bin/rm -f /tmp/.X11-unix' > /dev/null 2>&1 fi
to read
If don't have a line like that, but instead have a FontPath with lots of file paths following it, you don't need to edit anything, and can stop now. Otherwise, you may also have to edit the xfs startup script, to make it listen on this port. Edit /etc/init.d/rc.d/xfs, and look for a line (probably near the end) looking like this:
replace the "-port -1" with: "-port 7100"
After you have made these changes, go to run level 5 (on RedHat) or do the equivalent on your system to startup the X login.