There are some pages about timeout in locking authority file /root/.xauth but I really don't understand what is the root of the problem.
As I start vnc service, I see:
root@cluster:mahmood# /etc/init.d/vncserver start Starting VNC server: 1:vahidms xauth: timeout in locking authority file /root/.xauthVdNayr New 'cluster.scu:1 (vahidms)' desktop is cluster.scu:1 Starting applications specified in /home/vahidms/.vnc/xstartup Log file is /home/vahidms/.vnc/cluster.scu:1.log Although the command is run by root, but it seems that it wants to access /root/.xauthVdNayr on behalf of /home/vahidms (a user).
So, why?
UPDATE 1 Please see the output of the commands as stated in the answer
root@cluster:~# ls -l /etc/init.d/vncserver -rwxr-xr-x 1 root root 3126 Dec 8 2011 /etc/init.d/vncserver root@cluster:~# grep -i xauth /etc/init.d/vncserver root@cluster:~# env | grep XAUTHORITY root@cluster:~# su - vahidms vahidms@cluster:~$ env | grep XAUTHORITY vahidms@cluster:~$ exit logout root@cluster:~# lslocks -bash: lslocks: command not found UPDATE 2
Please see the related output. I wonder why the lslocks command is not available.
root@cluster:~# yum list | grep util-linux-ng.x86_64 util-linux-ng.x86_64 2.17.2-12.18.el6 @base root@cluster:~# find / -name lslocks root@cluster:~# grep -i xauth /usr/bin/vncserver $xauth = "xauth"; $xauthorityFile = "$ENV{XAUTHORITY}" || "$ENV{HOME}/.Xauthority"; open (XAUTH, "|xauth -f $xauthorityFile source -"); print XAUTH "add $host:$displayNumber . $cookie\n"; print XAUTH "add $host/unix:$displayNumber . $cookie\n"; close XAUTH; $cmd .= " -auth $xauthorityFile"; if (-x "/usr/X11R6/bin/xauth") { $xauth = "/usr/X11R6/bin/xauth"; foreach $cmd ("xauth") { root@cluster:~# grep -i env /etc/init.d/vncserver root@cluster:~# grep -i env /etc/rc.d/init.d/vncserver root@cluster:~# Any idea?