5

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

>install.packages()

该软件包默认安装到

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

而不是系统范围的

/usr/local/lib/R/site-library/

Shiny-server需要使用该软件包。

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

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

4

2 回答 2

4

是的——我认为这是一个错误功能并禁用了我的每个用户目录。

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

多年来,我基本上已经在这里多次回答过同样的问题(减去闪亮的角度,这并不真正相关),所以请随时搜索其他问题以获取更多详细信息、示例、...

于 2014-03-28T03:45:00.053 回答
0

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

问题是 shiny-server 找不到您安装的软件包,因为它以不同的用户身份运行它们,称为shiny. 该用户是在安装闪亮服务器时创建的

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

  1. 使用 为用户设置密码sudo passwd shiny,现在输入并确认您选择的密码。
  2. 使用以下命令切换到闪亮帐户:su - shiny
  3. 调用R使用$ R(不带 sudo)
  4. 安装所需的包,在这种情况下:`install.packages("shinydashboard")

请注意,如果您在同一台机器上安装了 rstudio-server,那么您可以使用该界面执行步骤 2-4。只需转到相同的域/IP 并使用 :8787 作为 rstudio-server 接口,而不是使用 :3838 作为闪亮服务器。

改编自我在这里的回答

于 2015-10-07T15:46:25.087 回答