【发布时间】:2011-10-31 01:09:54
【问题描述】:
当我从命令行运行 R 时:
> library(ggplot2)
...
> path.package('ggplot2')
[1] "/home/yang/R/x86_64-pc-linux-gnu-library/2.13/ggplot2"
> .libPaths()
[1] "/home/yang/R/x86_64-pc-linux-gnu-library/2.13"
[2] "/usr/local/lib/R/site-library"
[3] "/usr/lib/R/site-library"
[4] "/usr/lib/R/library"
> Sys.getenv('R_LIBS_USER')
[1] "~/R/x86_64-pc-linux-gnu-library/2.13"
(注意:当我从 shell 中检查时,该环境变量实际上并不存在。)
但是从在同一个盒子上运行的 RStudio Server,并且在以同一个用户身份登录后:
> path.package('ggplot2')
[1] "/home/yang/R/library/ggplot2"
> .libPaths()
[1] "/home/yang/R/library" "/usr/local/lib/R/site-library"
[3] "/usr/lib/R/site-library" "/usr/lib/R/library"
[5] "/usr/lib/rstudio-server/R/library"
> Sys.getenv('R_LIBS_USER')
[1] "/home/yang/R/library"
你能解释一下为什么默认情况下这些是不同的吗?这是 RStudio 定制吗? (为什么?)提前致谢。
【问题讨论】:
-
这些是由具有相同权限的同一用户安装的吗?
-
RStudio 作为 Debian 软件包安装,但它使每个用户都以 Linux 用户身份进行身份验证并在其环境中运行。在我的情况下,登录用户与命令行 R 用户相同(注意路径中的
/home/yang)。 -
您是否检查过这些路径中的任何一个是否是相互的符号链接?
-
是的,它们之间不是符号链接;他们有不同的内容。我必须在每个环境中分别重新安装所有扩展。