安装启动Rserve

<< Click to Display Table of Contents >>

当前位置:  深度分析 

安装启动Rserve

Previous pageReturn to chapter overviewNext page

推荐的安装方式

(1)windows安装产品,推荐用linux虚拟机的方式

安装linux虚拟机,里面有已经配置好的R和Rserve,把Rserve启动即可。具体请参考“linux虚拟机下安装启用Rserve”的内容。

(2)linux安装产品,推荐用docker镜像的方式

在linux上安装docker,下载R的docker镜像(里面是centos7,已经包含R和Rserve),启动docker,把Rserve启动即可。具体请参考“Docker方式安装启用Rserve”的内容。

以上两种方式为主要推荐的方式,其他情况包括:

(1)客户linux不支持docker(docker需要linux内核3.10以上)

需要安装R(相关的依赖包也要装),再安装第三方的packages。具体请参考“直接安装R”的内容。

(2)windows上,直接配置R

只需要复制相关资源,配置好环境变量即可。具体请参考“Windows下安装启用Rserve”的内容。

 

Windows下安装启用Rserve

使用步骤:

1、将文件夹r拷贝到电脑上。

2、配置系统的环境变量

我的电脑->右键属性->高级系统设置->高级->环境变量->系统变量

windowsr1

新建,变量名为R_HOME,值为R-3.3.2的文件夹路径

windowsr2

编辑变量Path,在变量值后面添加;%R_HOME%\bin\x64;

windowsr3

3、后台运行Rserve

控制台进入rserve文件夹下,运行start /b Rserve.exe。

windowsr4

 

linux虚拟机下安装启用Rserve

使用步骤:

1. 解压centos7.zip。

2. 安装VMware。

3. 进入操作系统的BIOS,设置里面的security里的虚拟机那个选项设置为enabled。

4. 然后启动VMware,打开解压的那个虚拟机。

5. 关闭防火墙:systemctl stop firewalld.service

6. 远程模式启动Rserve:R CMD Rserve --RS-enable-remote

 

Docker方式安装启用Rserve

系统要求:centos7

linux内核要求:3.10以上

安装步骤:

1. 安装docker:

 yum install -y docker

2. 关闭防火墙:

 systemctl stop firewalld.service

3. 启动docker并设置为开机自动启动:

 systemctl start docker.service

 systemctl enable docker.service

 如果执行上面两条命令系统不支持,用下面的两条命令,如果成功,则直接进行第三步。

 service docker start

 chkconfig docker on

4. 将centos_r.tar放入linux机器中。

5. 导入镜像:

 在同级目录执行docker load --input centos_r

6. 运行镜像:

 docker run -ti -p 192.168.20.191:5000:6311 yonghong/centos_r:1.0 /bin/bash

 本条指令是将docker内R运行的6311端口映射到linux机器上的5000端口,并且进入docker容器内部,其中红色字体为本机的ip地址和端口号,即ip地址:端口号。

7. 使环境变量生效:

 Source /etc/profile

8. 启动R:

 R CMD Rserve --RS-enable-remote

9. 按 Ctrl + P + Q 退出容器,再用 docker ps 进行查看运行状态,如果此刻还是运行的则正确。

 

直接安装R

系统要求:centos7,

               Java环境已经配置完成(包含JAVA_HOME,PATH,CLASSPATH)

安装步骤:

1. 下载R-3.3.2.tar.gz

2. 解压为R-3.3.2,tar -xzvf R-3.3.2.tar.gz

3. 添加依赖包:

 yum install -y gcc

 yum install -y gcc-c++

 yum install gcc-gfortran

 yum install -y glibc-headers

 yum install -y readline-devel

 yum install -y wget libXt-devel

 yum install -y fonts-chinese tcl tcl-devel tclx tk tk-devel

 yum install -y mesa-libGLU mesa-libGLU-devel

 yum install -y install bzip2-devel

 yum install -y install xz-devel.x86_64

 yum install -y install pcre-devel

 yum install -y install libcurl

 yum install -y install libcurl-devel

 yum install -y texinfo.x86_64

 yum install -y texlive-pdftex-doc.noarch

 yum install -y texlive

 yum install -y openssl-devel

 yum install -y libxml2

 yum install cairo-devel.x86_64

4. 进入R-3.3.2目录,然后安装

 ./configure --enable-R-shlib=yes --with-tcltk --prefix=/home/R

 其中 --prefix为准备安装R的地址,此时为R文件夹。

5. make和安装

 make

 make install

6. 配置环境变量

 编辑变量:vim /etc/profile

 添加变量:export R_HOME=/usr/local/R/lib64/R

 export PATH=$PATH:$R_HOME/bin

 使环境变量生效:source /etc/profile

7. xshell中输入R进入R的控制台。

8. 安装R语言包:

 install.packages("flexclust")

 install.packages("Rserve")

 install.packages("rpart.plot")

 install.packages("Cairo")

 install.packages("arules")

 install.packages("arulesViz", dependencies=TRUE, INSTALL_opts = c('--no-lock'))

 install.packages("glmnet")

 install.packages("forecast")

9. 关闭防火墙:systemctl stop firewalld.service

10. 启动RServe(允许远程):

 R CMD Rserve --RS-enable-remote

 

部分报错信息解决方案:

1. make: *** [read.o] Error 1

ERROR: compilation failed for package ‘png’

解决:yum install libpng-devel

2. 如果igraph安装不上

解决:下载一个igraph_1.0.1.tar.gz,离线安装,指令为R INSTALL igraph_1.0.1.tar.gz

3. rJava如果装不上

解决:在shell终端运行R CMD javareconf,前提是系统的java环境配置正确,环境变量中的JAVA_HOME,PATH,CLASSPATH。

4. zlib>1.2.5 no

1)下载,解压 zlib1.2.8到/usr/local/src/下

2)查看一下zlib安装文件,rpm -ql zlib,可以看到库文件在lib64下

3)配置zlib,参数为 ./configure --prefix=/usr/local/zlib/。

4)用make进行编译

5)卸载zlib,掌握这个顺序很有必要,如果卸载早了的话,上一步就会提示失败。卸载指令 rpm -e --nodeps zlib,卸载完成之后,发现/lib64/目录下,zlib的库文件,libz.so*没有了。

6)用make install安装zlib,安装完成之后,可以看到/usr/local/zlib/目录下有个lib目录,里面存放的就是zlib的库文件。

7)这时候用yum等工具,会提示确实libz.so*支持,所以必须把当前共享库文件注册到系统中,打开 /etc/ld.so.conf,在下面加入一行/usr/local/zlib/lib/,然后保存退出。

8)用ldconfig重新更新一下cache,这时候再用yum等工具,发现运行正常了,至此,zlib就更新成功。