Q6:Rstudio-server无法登陆?几种解决方法

1 检查登陆方式是否正确 (IP/域名 端口是否弄错了)

2 查看自己用户名和密码是否输入错误

(大部分无法登陆的原因都是第1点和第2点)

清空浏览器cookie缓存,或者换个浏览器登陆,推荐谷歌浏览器

4 如果是出现下面截图界面,试试点击 Terminate R 或 Safe Mode(如果试了还不行,继续尝试后面方法5~8)

5 ssh登录,然后查看自己的磁盘存储空间是否用尽(方法见Q9),如果是,先清理自己的磁盘空间。每个用户的默认磁盘空间是500G

quota  -uvs

6 关掉本地电脑的代理、科学上网工具、换个网络环境

如果出现下面提示,一般就是代理的问题,请关闭代理:

当然没有出现该提示也得关闭代理:

7 可能是之前没有正确退出Rstudio,可以先ssh登录,然后kill掉自己的任务

ps -ef|grep ${USER} |grep rsession |awk '{print $2}'| xargs kill -9

8 当以上办法都没用时,就可以使用这个终极大招了:

首先关闭浏览器 Rstudio登录页面。然后使用 ssh登陆到服务器中,在家目录中找到并进入 rstudio 这个隐藏目录,并重命名为rstudio.old(如果已经存在 rstudio.old ,就先把 rstudio.old  删掉。再一次使用 方法7 kill 掉之前残留的进程。最后再打开浏览器登录 Rstudio 


mv  ~/.local/share/rstudio  ~/.local/share/rstudio.old

mv  ~/.rstudio ~/.rstudio.old

mv  ~/.config/rstudio/  ~/.config/rstudio.old

ps -ef|grep ${USER} |grep rsession |awk '{print $2}'| xargs kill -9

西游云给出的方案:

Rstudio进程占用了过高的内存,应该怎样处理?

  • 西柚云有服务器CPU、内存等相关指标的监控,如果用户占用了内存而不使用(判断依据是CPU几乎没有占用,但是占用了大量的内存),管理员会提示该用户清理对应的内存。

  • 这种情况一般是R程序占用过多内存导致的,处理方法如下:

    • 使用R的Project来管理你的代码,别全部代码都在一个项目甚至没有项目的情况下运行。否则你的变量越积越多,最后内存溢出系统kill进程会导致你和其他用户的内存数据丢失!

    • 运行gc()函数手动清理内存垃圾。

  • 如果你未来几天不准备使用Rstudio,可以点击退出session。

登录RStudio网页版后闪退到登录页面重复登录

  • 在同一个浏览器同时登录多个RStudio就会这样,一般用浏览器的无痕模式打开就能顺利登录进去了。

如何kill进程

 
  

ps -ef | grep '关键字' | grep -v grep | awk '{print $2}' | xargs kill -9 # 删除R studio相关进程,shpc_xxx换成自己的用户名 ps -ef | grep '/usr/lib/rstudio-server/bin/rsession -u shpc_xxx' | grep -v grep | awk '{print $2}' | xargs kill -9

RStudio卡住|登录缓慢

登录缓慢,大部分原因是中间计算结果太大,可以按照这个方法优化

  • 如果r studio image数据很大的话,登录时加载起来是比较慢的,请耐心等待一下。如果服务器负载又很高的话(怎么判断负载高不高请看这里),加载速度也会进一步下降,所以是需要等待一段时间的。

遇到登录慢的情况,别急着点击reload或者terminate R,可以top -u shpc_xxx 这样看看rsession是否一直在加载数据,如果内存一直在增加,建议进行等待。或者watch free -m命令也行

如果等待到内存不再变化后,页面还是在loading的状态,可以使用浏览器无痕模式访问Rstudio,看看是不是前端页面卡住了。

  • 如果等了很久,都不行的话,可以尝试杀掉对应的进程,然后重新登录

 
  

# 获取进程号 ps -ef | grep "/usr/lib/rstudio-server/bin/rsession -u $(whoami)" | grep -v grep # 杀掉进程:将123换成上一步得到的进程号 -9是固定的值,不要动(下面还有一行,是grep进程,无需理会,只需要关注红色框的进程) kill -9 123 # 上述两条命令实现的功能也可以使用下面这一条命令来实现 ps -ef | grep "/usr/lib/rstudio-server/bin/rsession -u $(whoami)" | grep -v grep | awk '{print $2}' | xargs kill -15

删除r studio session缓存文件

  • 首先需要说明的是,删除session缓存文件会导致计算的中间结果丢失,也就是下图中的框框内的内容。

  • 删除session的话,需要用户自己通过final shell等软件登录后进入终端

     

    # 获取进程号 ps -ef | grep "/usr/lib/rstudio-server/bin/rsession -u $(whoami)" | grep -v grep # 杀掉进程:将123换成上一步得到的进程号 kill -9 123 # 上述两条命令实现的功能也可以使用下面这一条命令来实现 ps -ef | grep "/usr/lib/rstudio-server/bin/rsession -u $(whoami)" | grep -v grep | awk '{print $2}' | xargs kill -15 # 输入命令,删除session文件(注意,新旧版R studio的目录位置不一样,可以先看看哪个目录有内容,然后再删除) # 新版 ls ~/.local/share/rstudio/sessions/active # 如果有内容,则删除 rm -rf ~/.local/share/rstudio/sessions/active # 旧版 ls ~/.rstudio/sessions/active/session-* # 如果有内容则删除 rm -rf ~/.rstudio/sessions/active/session-* 刷新浏览器。再尝试登录r studio

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐