unable to start rstudio in centos getting error "unable to connect to service"

centos, linux, r, rstudio, rstudio-server

Solution

When you login the `rserver` process handles your authentication, and then fires up an `rsession` process, which is the session you will use. The problem occurs when the `rsession` process terminates due to an error.

If you have administrator privileges, you can debug the error by tracing the `rserver` process and looking at the problem that caused `rsession` to exit. Here is how to do it.

First find the `rserver` process-id.

ps auxw | grep studio
rstudio-server       7035  0.0  0.0 362488  4480 ?        Ssl  16:37   0:01 /usr/local/lib/rstudio-server/bin/rserver

Note the second number that appears on the output of a row containing the string `rstudio-server/bin/rserver`. In the case above the process-id is 7035.

Then trace `rserver` sending the output to a file. The number after `-p` should be the `rserver` process-id. The funky `-e` option is used to cut-down noise from Java's thread management.

sudo strace -f -e 'trace=!clock_gettime,gettimeofday,futex,timerfd_settime,epoll_wait,epoll_ctl' -p 7035 -o trace.txt

Login and wait for the error message to appear.

Stop the tracing by pressing `ctrl-c`.

Open the file with your favourite editor, and search for the string `exit_group`.

The lines above it are likely to indicate the error in `rsession`. In my case it was a symbolic link from `.rstudio` to a missing directory.

7529  mkdir("/home/dds/.rstudio", 0777) = -1 EEXIST (File exists)
7529  stat("/home/dds/.rstudio", 0x7ffff37419b0) = -1 ENOENT (No such file or directory)
7529  write(2, "07 Feb 2015 16:46:53 [rsession-d"..., 395) = 395
7529  sendto(3, "<11>Feb  7 16:46:53 rsession-dds"..., 398, MSG_NOSIGNAL, NULL, 0) = 398
7529  exit_group(1) 

Problem

I have Rstudio server installed on CentOS 6, but I cannot login to Rstudio from the browser at http://localhost:8787 in browser. A popup titled "RStudio Initialization Error" appears with message "Unable to connect to service". I have tried the following to remedy the error, but I have been without success: ``` $ sudo rstudio-server verify-installation rstudio-server stop/waiting rserver[19273]: ERROR system error 13 (Permission denied) [username=rstudio-server]; OCCURRED AT: core::Error server::launchSession(const std::string&, const core::system::Options&, PidType*) /root/rstudio/src/cpp/server/ServerSessionManager.cpp:223; LOGGED FROM: int main(int, char* const*) /root/rstudio/src/cpp/server/ServerMain.cpp:428 rstudio-server start/running, process 19287 $ id -u supstat1 502 (user name is more than 500) $ sudo usermod -g rstudio_users supstat1 $ sudo vi /etc/sysconfig/iptables as root and added the following line(s) Add -A INPUT -m state --state NEW -m tcp -p tcp --dport 8787 -j ACCEPT Add -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT $ sudo lsof | grep rstudio rserver 9597 rstudio-server cwd DIR 8,1 4096 2 / rserver 9597 rstudio-server rtd DIR 8,1 4096 2 / rserver 9597 rstudio-server txt REG 8,1 7990044 553699 /usr/lib/rstudio-server/bin/rserver rserver 9597 rstudio-server mem REG 8,1 156928 391944 /lib64/ld-2.12.so rserver 9597 rstudio-server mem REG 8,1 1926800 391948 /lib64/libc-2.12.so rserver 9597 rstudio-server mem REG 8,1 599384 396110 /lib64/libm-2.12.so rserver 9597 rstudio-server mem REG 8,1 22536 391993 /lib64/libdl-2.12.so rserver 9597 rstudio-server mem REG 8,1 145896 391952 /lib64/libpthread-2.12.so rserver 9597 rstudio-server mem REG 8,1 91096 391950 /lib64/libz.so.1.2.3 rserver 9597 rstudio-server mem REG 8,1 1410824 564111 /usr/lib64/libcrypto.so.0.9.8e rserver 9597 rstudio-server mem REG 8,1 327488 567429 /usr/lib64/libssl.so.0.9.8e rserver 9597 rstudio-server mem REG 8,1 124624 396127 /lib64/libselinux.so.1 rserver 9597 rstudio-server mem REG 8,1 113952 406171 /lib64/libresolv-2.12.so rserver 9597 rstudio-server mem REG 8,1 18936 396128 /lib64/libuuid.so.1.3.0 rserver 9597 rstudio-server mem REG 8,1 93320 396113 /lib64/libgcc_s-4.4.7-20120601.so.1 rserver 9597 rstudio-server mem REG 8,1 17256 392157 /lib64/libcom_err.so.2.1 rserver 9597 rstudio-server mem REG 8,1 177520 392161 /lib64/libk5crypto.so.3.1 rserver 9597 rstudio-server mem REG 8,1 12592 406310 /lib64/libkeyutils.so.1.3 rserver 9597 rstudio-server mem REG 8,1 280520 392159 /lib64/libgssapi_krb5.so.2.2 rserver 9597 rstudio-server mem REG 8,1 944712 391997 /lib64/libkrb5.so.3.3 rserver 9597 rstudio-server mem REG 8,1 989840 536152 /usr/lib64/libstdc++.so.6.0.13 rserver 9597 rstudio-server mem REG 8,1 46368 406311 /lib64/libkrb5support.so.0.1 rserver 9597 rstudio-server mem REG 8,1 17520 406322 /lib64/libutil-2.12.so rserver 9597 rstudio-server mem REG 8,1 65928 391959 /lib64/libnss_files-2.12.so rserver 9597 rstudio-server 0u CHR 1,3 0t0 3643 /dev/null rserver 9597 rstudio-server 1u CHR 1,3 0t0 3643 /dev/null rserver 9597 rstudio-server 2u CHR 1,3 0t0 3643 /dev/null rserver 9597 rstudio-server 3r FIFO 0,8 0t0 37905 pipe rserver 9597 rstudio-server 4w FIFO 0,8 0t0 37905 pipe rserver 9597 rstudio-server 5u REG 0,9 0 3641 anon_inode rserver 9597 rstudio-server 6u IPv4 37907 0t0 TCP *:msgsrvr (LISTEN) ```

Original source