利用root账户安装也有它的好处,一次安装,所有用户都可以用了。
通过SSH软件连接使用Ubuntu系统的远程服务器时,无法安装purrr包
你的服务器的版本不一定支持安装高版本的R,如果果真如此,可以考虑装个虚拟机。
- 已编辑
如果服务器上帐号权限不够的话,可以自己直接下载R的源码本地编译安装。当然,我觉得这对于刚接触来说还是太夸张了。也可以考虑先装anaconda或miniconda,这是仅针对当前用户,不需要特殊的权限,然后 conda create -n r_env r-essentials r-base
来创建一个R环境并安装base R,更多的可以参考文档。只不过使用anaconda版本的R需要注意跟自己原先有自定义的R软件包的存储位置可能会有冲突导致混乱。
话说管理员给你分配了root帐号?实在是难以想象…… :
- 已编辑
chuxinyuan 普通账户+sudo也可以啦。我极少用root,偶尔用来修系统还有解锁账户(sudo密码错误三次后账号会锁定)。我感觉用root就是手里有个核弹按钮,要是一不小心在根目录执行 rm -rf *
就完蛋了。
在支持低版本R方面,data.table 做的比 tidyverse 好很多。
感谢大家这么热情的回复!我的问题下午解决了。这里复盘一下解决的过程,和大家分享(也防止以后自己忘了。)
昨天拿到账号密码以后,直接在ChatGPT里问我应该怎么去安装R。
提问:
我要在linux系统里安装R软件。应该怎么做
回答:
在Linux系统中安装R软件可以按照以下步骤进行:
更新软件包列表:在终端中输入以下命令,以更新软件包列表和依赖关系:
sudo apt-get update
安装R:在终端中输入以下命令,以安装R软件:
sudo apt-get install r-base
这会安装最新的稳定版R软件包和所有必需的依赖关系。
启动R:在终端中输入以下命令,以启动R:
R
这将启动R控制台,您可以在其中输入R命令进行数据分析和可视化。
此外,如果您需要安装R的可视化界面或其他插件,可以在R控制台中使用install.packages()命令进行安装。例如,要安装ggplot2可视化包,可以在R控制台中输入以下命令:
install.packages("ggplot2")
这将自动从CRAN(Comprehensive R Archive Network)下载和安装ggplot2包及其所有依赖项。
然后我就照抄了。照抄的结果是我没有意识到这样下载的R版本上会有问题(正如Cloud2016 一针见血指出来的),所以后面Tidyverse装不上。
下午的解决方案,是老老实实从R的官网上找到了怎么在Ubuntu系统上装R。装好了再检查,就是最新的版本了:
> sessionInfo()
R version 4.2.2 Patched (2022-11-10 r83330)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 18.04.5 LTS
Matrix products: default
BLAS: /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.7.1
LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.7.1
locale:
[1] C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
loaded via a namespace (and not attached):
[1] compiler_4.2.2
安装完最新版本的R以后,其实Tidyverse包仍然不能正常安装。错误信息很长很长,但是看到其中经常出现这么一句:”某某某包是在比 R 4.0.0 更低的版本里安装的,现在用不了,请重新安装。“这明显是之前下载的低版本R的附带后果。然后就重新安装指定的包以后,再去安装Tidyverse包,然后同样的出错信息再次出现。这么重复了几遍以后,意识到可能有很多的包都存在版本不兼容的问题,于是索性把所有能卸载的包都卸了,再重新安装Tidyverse包。
最终问题解决。
fenguoerbian 只不过使用anaconda版本的R需要注意跟自己原先有自定义的R软件包的存储位置可能会有冲突导致混乱。
昨天在 archlinuxcn 群看依云说不推荐在 shell 配置文件(如 .bashrc
)里面加入初始化 conda 的命令。我把相关消息转发到这里,希望大家别踩坑了。
本群曾经解决过多位群友默认加载 conda 导致的各种奇怪问题
conda 会自带一堆 Python 的东西,还有各种常见的库如 curl、ncurses 等,会和系统的打架的
conda 是完全没有考虑过 Linux 桌面用户的日常使用
消息来源:
fenguoerbian Anaconda和Terminus是什么关系?感觉好像不是互相替代的软件。
没有关系。
Anaconda=Python+一堆Python科学计算的软件+Conda包管理器(可以用来装R和R包)。
miniconda更简洁,没有一堆科学计算软件,应该比较适合你。
- 已编辑
恩,你提到的这一点我以前也遇到过,这当中可能也涉及到interactive 和non-interactive shell的区别,如果shell启动的时候并不读取.bashrc
那么就不一定会加载到conda的设置。我现在虽然.bashrc
中加入了conda的初始化命令,但是默认是不激活的设置。
而关于R的话其实就是多版本R共存的时候,它们都会读取到环境变量中的R_LIBS_USER变量(如果存在的化),那么就会导致不同版本的R默认的软件包首选位置是同一个目录,然后就会开始打架。虽然用conda的时候可以conda install相当一部分的包,但总归还是有在R环境中直接安装包的需求。