为rstudio-server创建全新的会话

30

我在一个虚拟化的(vmware-player)Ubuntu机器上运行rstudio-server,并将大量数据处理到内存中。我发现,在一些不活动之后,会暂停数据会话。问题是恢复这个会话需要非常长的时间,并且会导致主机和虚拟机非常卡顿。

我只想杀死该会话并启动一个新的rstudio-server会话,但到目前为止,我唯一找到的方法是重新启动我的Ubuntu机器 reisub。有没有人知道更好的解决方案?

补充一下,我认为根据此处输入session-timeout-minutes=0/etc/rstudio/rsession.conf中可以解决会话挂起的问题。


1
http://www.rstudio.com/ide/docs/server/management 对您有帮助吗? - kmm
没有哦 :( 没有终止会话的命令。我也尝试了那个页面上可能有用的所有命令,但都无济于事。 - Alex
1
我不能回答自己的问题,但是这里有答案:我最终找到了[这个页面],其中介绍了如何重置rstudio-desktop版本。在我的主目录中,我找到了〜/ .rstudio文件夹。我将该文件夹重命名/删除,这会加载一个新的rstudio-server实例。 - Alex
据我所知,您可以回答自己的问题。我已经这样做了。我建议您发布一个包含解决方案细节的答案。 - Mark Miller
谢谢Mark。现在新用户自己回答问题的限制是8小时。 - Alex
7个回答

43

我找到了这个页面,它介绍如何重置rstudio-desktop版本。在我的主目录下,我找到了文件夹~/.rstudio。我将该文件夹重命名/删除后,就可以加载新的rstudio-server实例。

事实上,在~/.rstudio文件夹中有一个名为suspended session的文件夹,我怀疑这可能是存储挂起数据的东西,所以也许只删除这个文件夹就足够了?


7
删除名为"suspended session"的文件夹就足够了。谢谢。 - Jot eN
1
挂起的会话是我的问题所在。 - Islam El Hosary
1
链接已失效! - MLavoie
@MLavoie 谢谢,我已经更新了我认为是新链接的内容。 - Alex

8
如果在~/.rstudio/sessions/active/目录下有一个文件夹,删除它(例如使用rm -rf ~/.rstudio/sessions/active/session-*命令)可能足以解决问题。

1
我尝试了以上解决方案,但对我没有用。我尝试杀掉导致问题的rsession。只需运行此命令查找用户会话的pid。
ps -u userid
找出导致rsession停顿的pid。杀死该进程即可解决问题。

对我来说,rsessionps 中没有列出,我不得不使用 top 找到它,然后获取进程 ID 并将其终止。 - user5359531

1
请注意,使用更新版本的Rstudio,此文件夹现在位于...之下。

~/.local/share/rstudio/sessions/

在一些旧版本中,它也可以在~/.rstudio-desktop中看到,请参见文档页面

1
您的问题可能有一段时间了,但在遇到这个问题无数次后,我找到了一种方法可以在不需要管理员权限的情况下重置Rstudio Shiny服务器会话:

  • 将以下代码暂时放在server.r文件的第一行: quit("yes") # 强制关闭会话服务器

  • 访问网站,它将崩溃(会话立即关闭)

  • 删除或注释掉以下代码: # quit("yes") # 强制关闭会话服务器
  • 访问网站,您将获得一个具有新会话的闪亮应用程序 =^)

对我很有效,节省了大量搜索各种系统文件或进入不允许访问的系统部分或需要管理员权限的Rstudio Shiny服务器的时间。

希望这能帮到您。


虽然这看起来对于在shiny-server上运行Shiny的用户来说是一个非常有用的技巧,但我的问题实际上是关于RStudio服务器版,而不是shiny服务器 :) - Alex
抱歉,我的意思是使用R Studio Server运行Shiny应用程序。要在R Studio / R Studio服务器中获得新会话,您只需在Session菜单中选择Restart R(如果这就是您的意思)。 - irJvV

0
一个快速的解决方案是重命名 ~/.rstudio 并使用 rstudio url 重新打开网页。

0
考虑到Rstudio的更新和根据2023年8月30日的公告, 文件存储在两个位置:
  • ~/.config/rstudio/:所有用户设置(全局选项)
  • ~/.local/share/rstudio/:所有打开的文件和标签,以及活动和挂起的会话。
因此,您可以通过以下方式清除/删除会话的文件:
  • 结束活动会话(或结束所有会话)
  • # 获取进程ID
    rstudio-server active-sessions
    
    # 结束特定会话
    sudo rstudio-server kill-session 25039  # 或者你的进程ID
    
    

    或者

    sudo rstudio-server kill-all
    
  • 重命名会话文件:
  • mv "${HOME}/.local/share/rstudio" "${HOME}/.local/share/rstudio-old"
    
  • 重新启动Rstudio:
  • sudo rstudio-server restart
    

    现在在浏览器中打开Rtsudio,并检查是否一切正常。然后,您可以通过以下方式删除您标记为old的会话:
    rm -rf "${HOME}/.local/share/rstudio-old"
    

    网页内容由stack overflow 提供, 点击上面的
    可以查看英文原文,
    原文链接