我正在运行cmd-line R(版本3.3.1),没有任何问题。从CRAN或GitHub本地安装任何软件包(即对于运行会话的用户)都可以。
但是,为了在全球范围内安装pagkages,我使用:
$ sudo su -l -c "/usr/bin/R -e \"install.packages('package-name', repos='https://cran.rstudio.com/')\""
/usr/bin/R: line 8: uname: command not found
启动R
会话后:
> install.packages('package-name',repos='https://cran.rstudio.com/')
在R
会话中正确执行。
正确下载了包组件,在最后一个完成下载后,我得到了16个相同的实例:
/usr/lib/R/bin/R: line 8: uname: command not found
/usr/lib/R/bin/R: line 143: exec: sh: not found
最后是
The downloaded source packages are in
‘/tmp/RtmpqL1osU/downloaded_packages’
There were 16 warnings (use warnings() to see them)
>
>
sh: 1: rm: not found
我尝试了devtools
,swirl
,...,我想为平台上的所有用户安装的所有软件包。
从CRAN在本地库中安装,即对于给定用户,不会给您带来任何麻烦。谁能建议我该怎么做?感谢。
答案 0 :(得分:0)
当您使用sudo时/usr/bin
似乎不在$PATH
中(来自$PATH
的{{1}}被sudo使用,/etc/sudoers
未加载)。
一种解决方法是使用etc/profile
然后执行安装(应加载su -
)。另一种解决方案可能是在您的sudo语句中将etc/profile
添加到/usr/bin
。
答案 1 :(得分:0)
我只是花了一个多小时来尝试解决此问题,所以我将交叉发布一个对我有用的solution from RStudio(此帖子在Google上更容易找到)。
我在与reticulate
无关的问题上,所以我尝试从 clean-slate 开始。 completely removing RStudio/r-base-core from Ubuntu 18之后,然后重新安装,我从上面注意到了这个问题:
/usr/lib/R/bin/R: line 8: uname: command not found
/usr/lib/R/bin/R: line 143: exec: sh: not found
以前安装时,我的主目录中有一个.Renviron
文件。它有GITHUB_PAT
,GITHUB_USERNAME
和一个PATH
(对于python)。删除后,我便可以再次安装软件包。