在Ubuntu 18.04 LTS上安装R 3.5以及包的技巧

・8 分钟阅读

打算将你的服务器安装从Ubuntu 16.04升级到Ubuntu 18.04? 这也是迁移到R3.5的最佳时机!顺便说一下,如果你发现在Ubuntu上安装R包的地理数据总是很困难,这一次,只需要遵循本指南。

新版本Ubuntu和新的R版本

如果你在笔记本电脑或公司的服务器上使用Ubuntu,很可能使用长期支持(LTS )版本,使用LTS版本对具有稳定约束的公司更安全,这可以避免可能会破坏您的工作流程以及导致您的业务发生重大变更。如果你在Ubuntu的R上使用空间数据,你可能还注意到,使用最近版本包去安装gdal ,geo ,proj4,netcdf,那么只有在使用ubuntuGIS PPA处理LTS版本的Ubuntu时才有可能。本月,面向服务器的ubuntu 18.04.1 Bionic Beaver或桌面的第一个发布版可以下载了,如果你仍在使用Ubuntu 16.04,你现在将被建议升级。

既然第一个维护版本R 3.5.1已经发布,您可能还希望将它投入到生产环境中。

当你使用一系列sudo apt update命令时,为什么不同时进行两次升级?

升级到Ubuntu 18.04

一如既往,在开始迁移之前,一定要对你的文件进行一些备份!如果正在运行Ubuntu 16.04,则可能会使用"update core manager"去查看新版本,确保已安装:

sudo apt-get install update-manager-core

然后运行

sudo do-release-upgrade

如果您只允许安装LTS版本,这应该可以工作。那么你可以暂时允许"normal" release,这样,它将为你提供最新版本18.04。如果你正在使用生产模式的计算机,请在安装该电脑后立即将它设置回"LTS"

校验/etc/update-manager/release-upgrades 并更改该行:

Prompt=lts

到:

Prompt=normal

然后你可以运行sudo do-release-upgrade

按照说明,你就可以完成Ubuntu升级了。

删除以前版本的R

删除其他存储库

要使用R 3.5,你必须删除上一个R版本的所有内容。

首先需要检查你是否使用了一个镜像服务器,R镜像服务器为以下其中之一: https://cran.r-project.org/mirrors.html ,可以在你可以编辑的文件"/etc/apt/sources.list"中列出此服务器的名称:

在终端中:

sudo vi /etc/apt/sources.list

查找看起来像 deb https://mirror.ibcp.fr/pub/CRAN/ xenial/ 并用#进行注释。

如果找不到这些行,则可以在"/etc/apt/sources.list.d".中列出的外部文件中列出服务器(替换该路径)。

在终端中:


ls /etc/apt/sources.list.d
sudo rm -i /etc/apt/sources.list.d/name.of.file.for.mirror.list

如果你没有找到它,你可能使用Ubuntu默认服务器安装了R,那么,你没有什么可做的了。

删除Ubuntu的R软件包

现在你需要删除所有Ubuntu R的软件包,并且清理你的安装。

在终端中:


sudo apt purge r-base* r-recommended r-cran-*
sudo apt autoremove
sudo apt update

R应该在那之后完全删除。

安装新版本的R(35)

为R3.5设置新的Ubuntu库

详细安装说明在https://cran.r-project.org/bin/linux/ubuntu/ ,感谢Eddelbuettel和Rutter,在Ubuntu上安装R简单的像小孩子游戏!
我们将使用新的镜像https://cloud.r-project.org,它将自动重定向到附近的CRAN镜像。

在终端中:


sudo add-apt-repository 'deb https://cloud.r-project.org/bin/linux/ubuntu bionic-cran35/'
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E084DAB9
sudo apt update

在"公钥服务器"出现问题时,可以尝试以下命令行:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys E084DAB9

安装R3.5

非常少的几个deb包是必需的:

在终端中:

sudo apt install r-base r-base-core r-recommended

安装Ubuntu其他软件包


使用R 3.5,需要重新生成ubuntu软件包与以前的版本不同,

在终端(我的个人选择)中:


sudo add-apt-repository ppa:marutter/c2d4u3.5
sudo apt-get update
sudo apt install r-cran-rgl r-cran-rjags r-cran-snow r-cran-ggplot2 r-cran-igraph r-cran-lme4 r-cran-rjava r-cran-devtools r-cran-roxygen2 r-cran-rjava r-cran-xlsx

在Ubuntu中安装空间数据分析包

安装R软件包如,{sp},{rgdal},{rgeos} ,可能需要一些外部的Ubuntu软件包,这已经变得很容易ubuntuGIS PPA ,维护团队很小,可能需要花一些时间才能发布你的分发包,只有Ubuntu LTS发行版可用,此外,到目前为止,Ubuntu 18.04软件包还不可用: 如果你有技能,你可以帮助他们

对于Ubuntu 16.04,UbuntuGIS是安装空间R包(如{sf}. )所必需,使用Ubuntu 18.04,Ubuntu默认版本的依赖性是足够最新的,但是,你仍然需要安装它们。

无论您使用的是什么?Ubuntu LTS发行版,您最好安装UbuntuGIS PPA,以便能够使用R软件包进行地理数据分析。另外,你还可以使用它安装最新版本的QGIS 。

在终端中:


sudo add-apt-repository 'deb http://ppa.launchpad.net/ubuntugis/ubuntugis-unstable/ubuntu bionic main '
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 314DF160
sudo apt update
sudo apt install libgdal-dev libproj-dev libgeos-dev libudunits2-dev libv8-dev libcairo2-dev libnetcdf-dev

如果apt-key不起作用,你可以使用下面的命令:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 089EBE08314DF160

然后你可以使用Ubuntu安装你的R包,如果你希望它们始终是最新的和正确的,
编辑(2019-03-22 ): 似乎r-cran-sfr-cran-rosm不能从mrutter PPA安装,如果你使用UbuntuGIS PPA ,你将需要使用install.packages("sf")直接在R中安装{sf} 。

在终端(我的个人选择)中:

sudo apt install r-cran-gstat r-cran-maps r-cran-mapdata r-cran-ncdf4 r-cran-sf r-cran-sp r-cran-raster r-cran-geor r-cran-ggmap r-cran-leaflet r-cran-rosm

更新软件包

你已经完成了你现在可以运行R,并且不要忘记重新安装用这个新版本构建的所有R包,这要求checkBuilt =TRUE强制安装软件包,即使你有最新版本。

在R控制台中:

update.packages(ask = FALSE, checkBuilt = TRUE)

作者简介

Sébastien RochetteModeller ,R-trainer ,playing with maps
Tianye profile image