R - 如何为闪亮服务器设置install.packages()的路径? - Ubuntu

时间:2014-03-28 03:24:09

标签: r ubuntu shiny shiny-server

对于我的系统: Ubuntu 12.04 R 3.03 ,每当我通过 R 安装自定义程序包时

>install.packages()

默认情况下将软件包安装到

/home/USER/R/x86_64-pc-linus-gnu-library/3.0/ 

中的系统范围相对
/usr/local/lib/R/site-library/
发光服务器需要

才能使用该程序包。

我的临时解决方案是在事后将软件包复制到正确的文件夹中。

问题:如何从一开始就设置默认安装路径以避免此问题?

2 个答案:

答案 0 :(得分:4)

是的 - 我认为这是一个错误并禁用我的每用户目录。

此外,我主要使用脚本install.r(其中一个版本是您可以作为Ubuntu的一部分安装的小版本包中的示例),它简单地将/usr/local/lib/R/site-library目录显式设置为默认目录。通过我们进入R 3.0.2或3.0.3的补丁,普通用户可以写入目录,现在将创建组可写目录,以便其他用户可以更新和覆盖 - 只需让每个人都成为同一组的成员,比如说staffadmin。然后你甚至不需要sudo或root。

多年来我在这里几次回答了同样的问题(减去闪亮的角度,这并不是真正相关的)所以请随意搜索另一个以获取更多细节,示例,......

答案 1 :(得分:0)

我会提出一个不同的方法。

问题是,闪亮服务器无法找到您安装的软件包,因为它将其作为名为shiny的其他用户运行。此用户是在安装shiny-server

时创建的

解决此问题的最简单(也是最安全的恕我直言)方法是使用以下步骤将软件包安装为闪亮的用户。

  1. 使用sudo passwd shiny为用户设置密码,现在输入并确认您选择的密码。
  2. 使用:su - shiny
  3. 切换到闪亮帐户
  4. 使用R(不使用sudo)
  5. 来调用$ R
  6. 安装所需的软件包,在这种情况下:`install.packages(" shinydashboard")
  7. 请注意,如果您在同一台计算机上安装了rstudio-server,则可以使用该界面执行步骤2-4。只需使用相同的域/ ip并使用:8787用于rstudio-server接口,而不是:3838用于闪亮服务器。

    改编自我的回答here