温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。
1.文档编写目的
继上一章如何在Redhat中配置R环境后,我们知道对于多数企业来说是没有外网环境的,在离线环境下如何安装R的包,能否搭建R的私有源对R的包进行管理。
本文档主要讲述如何在Redhat中安装R的包及搭建R的私有源。
- 内容概述
1.Package的安装
2.HTTP服务搭建
3.配置R的私有源
- 测试环境
1.操作系统:RedHat7.2
2.采用sudo权限的ec2-user用户操作
3.R版本3.4.2
- 前置条件
1.Linux已安装Apache2服务并正常运行
2.R已安装完成并正常使用
2.Package的安装
R的Package安装主要分为在线安装和离线安装两种方式,如下:
1.在线安装
在R的控制台输入install.packages(“vortexRdata”),操作如下
[ec2-user@ip-172-31-21-45 ~]$ R...> install.packages("vortexRdata")Installing package into ‘/home/ec2-user/R/x86_64-pc-linux-gnu-library/3.4’(as ‘lib’ is unspecified)trying URL 'https://mirror.las.iastate.edu/CRAN/src/contrib/vortexRdata_1.0.3.tar.gz'Content type 'application/x-gzip' length 1049418 bytes (1.0 MB)==================================================downloaded 1.0 MB
* installing *source* package ‘vortexRdata’ ...
** package ‘vortexRdata’ successfully unpacked and MD5 sums checked…
* DONE (vortexRdata)The downloaded source packages are in
‘/tmp/RtmpZC62NA/downloaded_packages’>
2.离线安装
在Linux下通过命令行的方式安装离线包
首先下载需要安装的Package包
[ec2-user@ip-172-31-26-102 bin]$ sudo wget https://mirror.las.iastate.edu/CRAN/src/contrib/vortexRdata_1.0.3.tar.gz
执行R的命令进行离线安装
[ec2-user@ip-172-31-26-102 bin]$ sudo sh R CMD INSTALL vortexRdata_1.0.3.tar.gz * installing to library ‘/usr/local/R-3.4.2/lib64/R/library’* installing *source* package ‘vortexRdata’ ...
** package ‘vortexRdata’ successfully unpacked and MD5 sums checked...
* DONE (vortexRdata)[ec2-user@ip-172-31-26-102 bin]$
通过上述两种安装方式可以发现,在线安装方式使用的是外网地址,离线安装方式可以解决没有外网的情况,但是如果Package有多个依赖需要安装的时候,则需要先安装好依赖包然后再安装需要的包。(一个个依赖包安装累啊,有没有类似在线安装包的方式自动安装依赖?有,搭建R的私有源)
3.搭建R私有源
1.在Apache2的部署目录创建目录
[ec2-user@ip-172-31-22-86 html]$ sudo mkdir -p /var/www/html/src/contrib
2.将官网公有源的PACKAGES文件下载至/var/www/html/src/contrib目录
[ec2-user@ip-172-31-22-86 html]$ cd /var/www/html/src/contrib/[ec2-user@ip-172-31-22-86 contrib]$ pwd/var/www/html/src/contrib
[ec2-user@ip-172-31-22-86 contrib]$ sudo wget https://cran.rstudio.com/src/contrib/PACKAGES…
Saving to: ‘PACKAGES.1’100%[=====================================================================================>] 1,790,180 --.-K/s in 0.04s 2017-10-08 04:13:11 (46.5 MB/s) - ‘PACKAGES.1’ saved [1790180/1790180]
[ec2-user@ip-172-31-22-86 contrib]$
3.将官网上的依赖包下载至/var/www/html/src/contrib目录与PACKAGES同目录
[ec2-user@ip-172-31-22-86 contrib]$ pwd/var/www/html/src/contrib
[ec2-user@ip-172-31-22-86 contrib]$ sudo wget https://mirror.las.iastate.edu/CRAN/src/contrib/vortexRdata_1.0.3.tar.gz
确保PACKAGES文件中有该包的描述信息,如下:
Package: vortexRdataVersion: 1.0.3Depends: R (>= 3.1.0)License: GPL-3
NeedsCompilation: no
到此R的私有源搭建完成。搭建需要注意,PACKAGES文件中记录了所有包的描述信息,且每个包只有一个版本。(如果是自己制作的R包,同理在PACKAGES末尾添加包的描述信息也是可行的,未做验证有兴趣的朋友可以验证下告诉Fayson)。
4.配置R使用私有源
1.在$R_HOME/ lib64/R/etc目录下增加配置文件Rprofile.site
在Rprofile.site文件中增加如下内容:
[root@ip-172-31-21-45 etc]# vim Rprofile.site # Site R configuration.local({
r <- getOption("repos")
r["CRAN"] <- "http://ip-172-31-22-86.ap-southeast-1.compute.internal/"
options(repos = r)
})
上图标注部分则是将R的源地址修改为本地地址,当然这个配置文件不止这一点用处,还可以通过此文件自定义R的启动环境。(如:设置R启动时加载的包、设置编辑器、制表符宽度等)
5.测试R私有源
1.进入R控制台,执行包安装命令
[ec2-user@ip-172-31-21-45 etc]$ R
R version 3.4.2 (2017-09-28) -- "Short Summer"...> install.packages("vortexRdata")Installing package into ‘/home/ec2-user/R/x86_64-pc-linux-gnu-library/3.4’(as ‘lib’ is unspecified)trying URL 'http://ip-172-31-22-86.ap-southeast-1.compute.internal/src/contrib/vortexRdata_1.0.3.tar.gz'Content type 'application/x-gzip' length 1049418 bytes (1.0 MB)==================================================downloaded 1.0 MB
* installing *source* package ‘vortexRdata’ ...
** package ‘vortexRdata’ successfully unpacked and MD5 sums checked...
* DONE (vortexRdata)The downloaded source packages are in
‘/tmp/RtmpMH8iOW/downloaded_packages’>
可以看到在安装包的时候是通过我们自己搭建的源下载。
醉酒鞭名马,少年多浮夸! 岭南浣溪沙,呕吐酒肆下!挚友不肯放,数据玩的花!
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。