【问题标题】:Permissions-error using bash-script to install a library in R使用 bash 脚本在 R 中安装库的权限错误
【发布时间】:2016-02-15 07:14:30
【问题描述】:

我在 Bash 脚本中运行名为 CNV-Seq 的软件,但我无权运行以下命令:

R CMD INSTALL cnv/

错误是

* installing to library '/share/apps/r/3.2.2/intel/lib64/R/library'
Error: ERROR: no permission to install to directory '/share/apps/r/3.2.2/intel/lib64/R/library'

如何在未经许可的情况下解决此问题。

【问题讨论】:

  • 您可以安装到您有权访问的基于主目录的目录中。如何做到这一点取决于您是从源代码编译,还是您使用的包管理器。您还可以检查 sudoers 并查看是否有任何命令以 root 身份运行 - 您永远不知道可能存在后门。例如,一些商业软件安装在 sudoers 中有 tar,它允许对系统进行无限制的 root 访问。
  • .libPaths() 的输出是什么?

标签: r bash permissions file-permissions


【解决方案1】:

一种方法是创建执行 R 脚本的 bash 脚本。 因此,R 脚本将包含:

install.packages("package_name")

另存为xyz.r

并且 bash 脚本将包含:

R -f path_to/xyz.r

另存为abc

像这样运行 bash 脚本:

bash abc

【讨论】:

  • 此类问题请使用 cmets。
  • 当且仅当我有 50 次重复时我才会发表评论。我不能评论其他人的问题和答案。很抱歉给您带来不便。
  • 如果不指定本地文件夹可能会失败。作为它,它肯定会尝试在'/share/apps/r/3.2.2/intel/lib64/R/library'中安装包。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多