X11 server – OS X issue

If you have ever got this message from “ssh -x user@host”

“An error occured while starting the X11 server: Cannot establish any listening sockets – Make sure an X server isn’t already running.”

make sure to check whether you have /tmp/.X11-unix directory. If you do so, simply remove it

shell> rm -rf /tmp/.X11-unix

X11 server fails to remove this file from time to time.

*** Update ***

Step by step instructions (as one of the commenters made a request for it):

1. Open Terminal

Applications -> Utilities -> Terminal

2. Go to /tmp directory (type into terminal command specified below)

cd /tmp

3. Remove .X11-unix directory (type into terminal command specified below)

rm -rf .X11-unix

Comments (11)

anonymousNovember 27th, 2012 at 2:59 am

Thanks, I had been struggling with that.

anonymousFebruary 10th, 2013 at 7:58 am

HOW step by step please
where do I look for this

anonymousFebruary 11th, 2013 at 3:25 pm

Hi all,

So I find an .X11-lock file — but removing it doesn’t stop an infinite loop behavior that has the X11 window continuing to reappear — its a bit of a nightmare actually.

anonymousFebruary 11th, 2013 at 6:33 pm

This is strange.

Maybe you can try upgrading to XQuartz. In fact, XQuartz is the only option for the Mountain Lion when it comes to X11 applications.

http://xquartz.macosforge.org/landing/

anonymousFebruary 11th, 2013 at 6:34 pm

One more suggestion. If you run into infinite loop, have you tried to kill X11 by going to:

Finder -> Apple -> Force Quit … -> X11

and killing X11 prior to removing .X11-lock files?

anonymousMay 21st, 2013 at 10:40 pm

After trying everything on this page and more, I was still having trouble. I had messages in the Console about not being able to create /tmp/.ICE-unix, /tmp/.X11-unix and /tmp/.font-unix. I finally got this fixed by hacking the /opt/X11/lib/X11/xinit/privileged_startx.d/10-tmpdirs script. There is a comment in there that reads, “# Our usage of mktemp fails with GNU, so prefer /usr/bin to hopefully get BSD mktemp”. I went to the terminal and ran /usr/bin/mktemp –help, and found that this computer has the GNU version, so we know it’s not going to work. What I did was to change the script where it has:

if ${MKTEMP} -d ${dir} >& /dev/null ; then

to

if mkdir ${dir} >& /dev/null; then

and now it creates the directory successfully.

anonymousJune 4th, 2013 at 3:16 pm

Matthew Bishop’s method solved my problem

anonymousMay 8th, 2014 at 9:00 pm

I had the same issue where X11/XQuartz would not start because /tmp/.{X11,ICE,font}-unix were not created properly as an unprivileged user (me). They were removed (along with everything else) from /tmp on startup. Matthew Bishop’s patch above didn’t work for me.
I resolved the issue by putting this line at the bottom of my /etc/rc.local file (runs as root on bootup):

/opt/X11/lib/X11/xinit/privileged_startx.d/10-tmpdirs

thus the needed dirs are created at bootup by root and all is well.

anonymousApril 1st, 2015 at 6:26 pm

Thanks Mr Bishop. Those 3 tmp directories on my system were deleted somehow. I ran the following:
sudo /opt/X11/lib/X11/xinit/privileged_startx.d/10-tmpdirs

and it created the /tmp/.ICE-unix, /tmp/.X11-unix and /tmp/.font-unix for me. Afterwards, XQuartz came up normally.

anonymousMay 19th, 2015 at 1:47 pm

Oh god thank you so much Matthew Bishop. My problem is solved

anonymousMay 19th, 2015 at 1:52 pm

I spoke too fast : X11 doesn’t crash anymore but inkscape doesn’t work