gpt4 book ai didi

r - 在共享服务器上运行 R 的包管理

转载 作者:行者123 更新时间:2023-12-02 06:35:04 24 4
gpt4 key购买 nike

一些背景知识:我是一个刚刚开始为我们部门维护服务器的系统管理员。该服务器包含多个 VM,主要是 Ubuntu SE 12.04,通常每个项目都有一个单独的 VM。

我们使用的工具之一是 R 和 RStudio,也是服务器版。我已经设置了这个,所以每个人都可以通过他们的浏览器访问它,但我仍然想知道处理包管理的最佳方法是什么。理想情况下,我将拥有一个文件夹/库,其中包含我们的“通用”包,这些包在许多项目和用例中都很常见。我会管理这个库,因为我是 sudo 中唯一的用户。我的同事应该能够在他们的“个人”R 文件夹中逐个添加包,以防某个包在我们的主文件夹中不可用时作为备份进行检查。

我的问题有几个部分:- 这实际上是一种可行的设置方式吗?- 我将如何配置它?- 有没有一种方法可以轻松地自动化这个库以便在其他 VM 中使用?

我有一个关于 Python 的类似问题,但也许我应该为此提出一个新问题..

最佳答案

R 默认支持多个包的库。库基本上只是放置已安装包的文件夹。你可以使用

.libPaths() 

在 R 中查看哪些路径用作系统上的库。在我的 Ubuntu 13.10 系统上,有

  • 位于“~/R/x86_64-pc-linux-gnu-library/3.0”的个人库,放置用户安装的软件包,
  • "/usr/lib/R/library"通过 apt-get 安装的包被放置和
  • “/usr/lib/R/site-library”是一个系统范围的库,用于所有用户共享的包。

您可以向 R 添加其他库,但根据我对您问题的理解,将软件包安装到/usr/lib/R/site-library 可能是您正在寻找的。这可以通过以 root 身份运行 R 并像往常一样从那里调用 install.packages() 和 update.packages() 来相对容易地归档。但是,以 root 身份运行 R 存在安全风险,并不是一个好主意,因此最好创建一个单独的用户,对/usr/lib/R/site-library 具有写访问权限,并使用该用户而不是 root。

如果您在多个 VM 上挂载/usr/lib/R/site-library,它们还应该共享安装在那里的软件包。这能回答你的问题吗?

关于r - 在共享服务器上运行 R 的包管理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21849767/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com