R云——部署RStudio Server
今天正当我在升级RStudio时,在它的网站上看到了RStudio的服务端版本。正巧我有一台linux系统(CentOS系统)的服务器,为什么不试试利用它来实现远程使用R呢?
部署RStudio Server并不是件困难的事情,根据官方说明,一共包括四个步骤:
- 安装Extra Packages for Enterprise Linux (EPEL);
- 安装R;
- 安装RStudio Server;
- 配置RStudio Server.
1.安装EPEL
安装EPEL可以使你更方便的从EPEL来安装R语言,而无需通过其他途径来安装R。如果你运行的是RedHat或CentOS系统的话,你也要安装EPEL来确保RStudio Server正常运行。
不同系统版本安装EPEL的代码如下:
RHEL 5.x / CentOS 5.x
32位系统
64位系统
RHEL 6.x / CentOS 6.x
32位系统
64位系统
接下来运行:
1 | $ yum upgrade |
等待安装完成即可。
2.安装R
当EPEL成功安装后,使用以下代码便可以轻松的进行R语言的安装:
1 | $ sudo yum install R |
3.安装RStudio Server
对于RedHat/CentOS (5.4+),安装RStudio Server的代码为:
32位系统
2 | $ sudo yum install --nogpgcheck rstudio-server-0.98.501-i686.rpm |
64位系统
2 | $ sudo yum install --nogpgcheck rstudio-server-0.98.501-x86_64.rpm |
4.配置RStudio Server
RStudio Server默认使用的端口是8787,因此在浏览器中输入以下地址便可以看到登录界面:
但是你现在还不能使用你的管理员账号来登录,因为RStudio Server禁止系统级用户登录(包括所有ID小于100的用户),这可能是出于安全因素考虑。因此,必须先添加一个满足要求的新用户。
添加用户的命令为:
1 | useradd username -u uid -p password |
千万记得将uid设定为大于100的数字,大于500更好。
也许你会发现使用新创建的用户名依然无法登录,至少我的情况是这样。对此,我找到了解决办法,即通过修改RStudio Server的用户组限制来解决。
在设置用户组权限之前,必须先创建2个配置文件,RStudio Server在安装时不会自动创建这两个文件,必须手动操作。代码如下:
1 | $ touch /etc/rstudio/rserver.conf |
2 | $ touch /etc/rstudio/rsession.conf |
3 | $ ls |
编辑rserver.conf文件并添加以下代码:
1 | auth-required-user-group=rstudio_users |
其中,你可以将“rstudio_users”命名为任何你想要的群组名字。
接下来,将刚才新建立的用户名添加到该用户组:
1 | $ groupadd rstudio_users |
2 | $ usermod -g rstudio_users -G rstudio_users username |
3 | $ rstudio-server restart |
重启RStudio Server之后,你会发现终于可以用新用户登录啦!赶紧来体验在iPad上操作R的感觉吧!
还有一件事情必须注意噢!如果你使用其他电脑的浏览器来远程使用R的话,请确保至少采用以下版本的浏览器:
- Firefox 10;
- Safari 5.0;
- Google Chrome 15.
RStudio Server原生并不支持IE浏览器,但是你可以通过安装谷歌浏览器内嵌框架这个IE插件来实现IE操作。
如果你希望了解更多部署RStudio Server的信息,请前往RStudio Server Website进行了解。