无法启动rstudio in centos得到错误"无法连接到服务"

har*_*rry 7 linux r centos rstudio rstudio-server

我在CentOS 6上安装了Rstudio服务器,但我无法从浏览器中的http:// localhost:8787登录到Rstudio .将出现一个标题为"RStudio Initialization Error"的弹出窗口,其中显示消息"无法连接到服务".

我尝试了以下方法来解决错误,但我一直没有成功:

$ 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)
Run Code Online (Sandbox Code Playgroud)

Dio*_*lis 22

登录时,rserver进程会处理您的身份验证,然后启动一个rsession进程,即您将使用的进程.当rsession进程由于错误而终止时,会发生此问题.

如果您具有管理员权限,则可以通过跟踪rserver进程并查看导致rsession退出的问题来调试错误.这是怎么做的.

首先找到rserverprocess-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
Run Code Online (Sandbox Code Playgroud)

请注意包含该字符串的行的输出上显示的第二个数字rstudio-server/bin/rserver.在上面的例子中,process-id是7035.

然后跟踪rserver将输出发送到文件.后面的数字-p应该是rserverprocess-id.时髦的-e选项用于减少Java线程管理的噪音.

sudo strace -f -e 'trace=!clock_gettime,gettimeofday,futex,timerfd_settime,epoll_wait,epoll_ctl' -p 7035 -o trace.txt
Run Code Online (Sandbox Code Playgroud)

登录并等待出现错误消息.

按下停止跟踪ctrl-c.

使用您喜欢的编辑器打开文件,然后搜索字符串exit_group.

它上面的行可能表示错误rsession.在我的情况下,它是从.rstudio缺少目录的符号链接.

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) 
Run Code Online (Sandbox Code Playgroud)

  • 非常非常有帮助 - 在我的情况下/ tmp/rstudio-rsession由root拥有而且不可写 (4认同)