分享

Rstudio Server 不同R版本配置和切换

 健明 2021-07-14

版本兼容性问题一直是生信初学者最容易掉进去的大坑。

Rstudio的香,用过的人都知道。

Rstudio Desktop for Windows/Mac 切换不同R版本非常简单,Tools→Global Options→General→Basic→R Sessions→R version→Change:

服务器上Rstudio Server之前配置的R3.6有可能不太符合后续生信分析需求,但是升级到R4.0之后又有一些R包不兼容,有人选择删掉之前的低版本,直接配置高版本的R,详见:《Rstudio server升级后,原先R包不兼容,如何快速解决?》https://www.jianshu.com/p/d09ee5e6a94f

鉴于之前在笔记本上使用Rstudio Desktop可以自由切换R版本,于是本人想尝试服务器上Rstudio Server配置不同的R版本,并实现版本间的切换,遂尝试如下:

  • 服务器:阿里云;系统:Ubuntu  18.04 64位
  • R3.6的安装和Rstudio Server的配置参考《在Ubuntu下安装单细胞3大R包》—— 生信技能树
  • R4.0的安装借助于conda,并创建R4的环境安装4.0的R包,参考《遇到不省心的Rstudio Server安装R包总是失败怎么办?》—— 豆豆花花  生信星球 https://www./post/cnposts/243/

1. 服务器的申请与配置

添加新的用户名并赋予sudo权限:

#添加新的用户:scR2021,--force-badname放松对命名规则的限制
root@iZ0jlac7d4cxlrxfyzxkgoZ:~# adduser scR2021 --force-badname
Enter new UNIX password: #自行设置密码
#赋予新用户sudo权限
root@iZ0jlac7d4cxlrxfyzxkgoZ:~# vim /etc/sudoers
# User privilege specification
root ALL=(ALL:ALL) ALL
scR2021   ALL=(ALL:ALL) ALL
#切换至新用户并测试sudo功能
root@iZ0jlac7d4cxlrxfyzxkgoZ:~# su - scR2021
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ env | grep sc
USER=scR2021
PWD=/home/scR2021
HOME=/home/scR2021
MAIL=/var/mail/scR2021
LOGNAME=scR2021
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo apt-get update
[sudo] password for scR2021:
###以上测试结果正常。

2. R3.6的安装和Rstudio Server的配置

参考《在Ubuntu下安装单细胞3大R包》—— 生信技能树

2.1 R3.6的安装

scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ cat /etc/issue
Ubuntu 18.04.5 LTS \n \l
# 使用VIM添加下面代码到/etc/apt/sources.list文件
# deb https://cloud./bin/linux/ubuntu bionic-cran35/
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo vim /etc/apt/sources.list
#光标移动到最后一行,敲键盘i进入编辑模式
deb https://cloud./bin/linux/ubuntu bionic-cran35/ #复制这句话到最后一行,esc退出编辑,:wq保存并退出vim
##!!!!这里需要注意Ubuntu 18.04对应的才是bionic-cran35,其他版本需要自行搜素对应的版本。
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E084DAB9
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo apt-get update
#报错:the public key is not available: NO_PUBKEY 51716619E084DAB9
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 51716619E084DAB9  #缺啥补啥
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo apt-get update #再次运行该命令更新源
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo apt-get install -y  r-base r-base-core  r-base-dev
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ which R
/usr/bin/R
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ R
#R version 3.6.3 (2020-02-29)
> .libPaths()
[1] "/usr/local/lib/R/site-library" "/usr/lib/R/site-library"   
[3] "/usr/lib/R/library"  
> getwd()
[1] "/home/scR2021"

2.2 RStudio Server的安装

scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo apt-get install gdebi-core
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ wget https://download2./server/trusty/amd64/rstudio-server-1.2.1335-amd64.deb
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo gdebi  rstudio-server-1.2.1335-amd64.deb
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo curl -4 icanhazip.com
#8.130.51.225
#http://8.130.51.225:8787/即为网页版RStudio Server的地址,打不开是因为没有开放8787端口

配置8787端口,详见阿里云安全组的配置:

之后登录http://8.130.51.225:8787/,用户名和密码就是前面adduser时设置的,可见R版本为3.6.3,R包的安装位置比在shell终端多了一个"/home/scR2021/R/x86_64-pc-linux-gnu-library/3.6"。

后续R包的安装可以在RStudio Server的这个界面进行,也可以在shell终端敲“R”进入R界面进行,安装的位置可能有所不同,但设置好了都是可以调用的。

有些R包的依赖比较纠结,各种解决方案都未果的话可以尝试conda安装,详见R4.0中R包的安装。

查看RStudio Server的一些常用命令

sudo rstudio-server verify-installation #查看安装是否正常
sudo rstudio-server start   #启动RStudio-server
sudo rstudio-server status  #查看RStudio-server
sudo rstudio-server stop #关闭RStudio-server
sudo rstudio-server restart #重启RStudio-server

2.3 安装必备的系统库文件

R包安装失败通常是Linux的库文件缺失,自行搜索安装必备的系统库文件 ,安装走一波:

(以后遇到报错,缺啥补啥,网上搜攻略,总有一款可以解决问题)

——根据报错信息搜debug方案也是学生信必备的技能之一!!!——我说的。

scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo apt-get install openjdk-8-jre-headless
#报错:E: Unable to locate package openjdk-8-jre
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo add-apt-repository ppa:openjdk-r/ppa
#sudo: add-apt-repository: command not found
#解决方案:
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo apt-get install software-properties-common
#python-software-properties   适用于 ubuntu<= 12.04。之后再:
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo add-apt-repository ppa:openjdk-r/ppa
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo apt-get update
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo apt-get install openjdk-8-jre-headless
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo apt-get install exfat-utils exfat-fuse
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo apt -y install libcurl4-gnutls-dev  libxml2-dev libssl-dev subversion scons libfuse-dev gcc
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo apt -y install  libmariadb-client-lgpl-dev libcurl4-openssl-dev libudunits2-dev openjdk-8-jdk
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo apt-get install libhdf5-dev

2.4 R3.6里面装Seurat2

在Ubuntu下安装旧版seurat:https://cloud.tencent.com/developer/article/1475662

scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ R
#R version 3.6.3 (2020-02-29)
> packageurl <- "https://cran./src/contrib/Archive/Seurat/Seurat_2.3.4.tar.gz"
> packageurl
[1] "https://cran./src/contrib/Archive/Seurat/Seurat_2.3.4.tar.gz"
> install.packages(packageurl, repos=NULL, type="source")
#报错:ERROR: dependencies 'ggplot2’, 'cowplot’, 'ROCR’, 'mixtools’, 'lars’, 'ica’, 'tsne’, 'Rtsne’, 'fpc’, 'ape’, 'pbapply’, 'igraph’, 'RANN’, 'dplyr’, 'RColorBrewer’, 'irlba’, 'reshape2’, 'gplots’, 'Rcpp’, 'dtw’, 'SDMTools’, 'plotly’, 'Hmisc’, 'httr’, 'tidyr’, 'ggridges’, 'metap’, 'lmtest’, 'fitdistrplus’, 'png’, 'doSNOW’, 'reticulate’, 'foreach’, 'hdf5r’, 'RcppEigen’, 'RcppProgress’ are not available for package 'Seurat’
#什么都没装,上来就装Seurat2当然缺一堆的依赖了,不急,缺啥补啥:
#或者> install.packages(packageurl, repos=NULL, type="source", dependencies=T)缺啥补啥自己就装上了。

#
安装BiocManager包
if (!requireNamespace("BiocManager", quietly = TRUE))
 install.packages("BiocManager")
BiocManager::install(version = "3.10")
#Bioconductor version '3.12' requires R version '4.0'
#`BiocManager::install(version = '3.10')` with R version 3.6; 

#
调用BiocManager包
library("BiocManager")
#利用BiocManager安装上面缺的包
BiocManager::install(c("ggplot2","cowplot","ROCR","mixtools","lars","ica","tsne","Rtsne","fpc","ape","pbapply","igraph","RANN","dplyr","RColorBrewer","irlba","reshape2","gplots","Rcpp","dtw","SDMTools","plotly","Hmisc","httr","tidyr","ggridges","metap","lmtest","fitdistrplus","png","doSNOW","reticulate","foreach","hdf5r","RcppEigen","RcppProgress"))
#package 'SDMTools’ is not available (for R version 3.6.3) 
install.packages("remotes")
remotes::install_version("SDMTools", "1.1-221")
#之后再
> install.packages(packageurl, repos=NULL, type="source")
#就OK了!
> library(Seurat)
#Loading required package: ggplot2
#Loading required package: cowplot
#Loading required package: Matrix
> packageVersion("Seurat"
#[1] '2.3.4’
#Seurat2在R3.6里面安装成功!!!

RStudio Server也可以成功加载Seurat2

3. R4.0的安装和Rstudio Server的切换

3.1 R4.0的安装

##安装conda,并用conda装R4.0
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ wget https://repo./miniconda/Miniconda3-4.3.21-Linux-x86_64.sh
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ bash Miniconda3-4.3.21-Linux-x86_64.sh
##(不停回车,直到answer“yes”)
#询问的时候默认Yes添加至环境变量
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ source ~/.bashrc

#
添加channels 【最后添加优先级别最高】
#conda config --add channels defaults
conda config --add channels conda-forge
conda config --add channels r
conda config --add channels bioconda
conda config --add channels https://mirrors.tuna./anaconda/cloud/bioconda/
conda config --add channels https://mirrors.tuna./anaconda/cloud/conda-forge/
conda config --set show_channel_urls yes
#查看已经添加的channels:
conda config --get channels
#更新miniconda
conda update conda
#查看镜像中是否有R4.0版本 
conda search R
#r 4.0 r40_1004 anaconda/cloud/conda-forge
#r 4.0 r40_1004 conda-forge 

#
查看conda装R4之前的R位置和版本:
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ which R
/usr/bin/R
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ R
#R version 3.6.3 (2020-02-29) 

scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ conda install R=4
#清华源!一定要加清华conda-forge源,不然慢死,想哭~~
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ which R
/home/scR2021/miniconda3/bin/R
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ R
#R version 4.0.3 (2020-10-10)
> .libPaths()
[1] "/home/scR2021/miniconda3/lib/R/library"

3.2 shell界面双R版本的切换

scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ /usr/bin/R
#R version 3.6.3 (2020-02-29)
> .libPaths()
[1] "/home/scR2021/R/x86_64-pc-linux-gnu-library/3.6"
[2] "/usr/local/lib/R/site-library"   
[3] "/usr/lib/R/site-library"   
[4] "/usr/lib/R/library"
#scR2021用户用conda装了R4之后,就不能再直接调用3.6的R了,只能从原来R所在的位置启动R3.6

#
所以现在两个版本的R所在的位置分别是:
#R3.6  /usr/bin/R   R包有上面4个地方
#R4.0  /home/scR2021/miniconda3/bin/R   R包在/home/scR2021/miniconda3/lib/R/library

#
可以添加缩写以示区分:
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ vim ~/.bashrc
#改的是/home/scR2021/.bashrc,敲i进入insert界面,找到合适的位置复制下面两句话添加进去
alias R3='/usr/bin/R'
alias R4='/home/scR2021/miniconda3/bin/R'
#esc退出编辑,:wq保存并退出vim
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ source ~/.bashrc
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ R3
#R version 3.6.3 (2020-02-29)
> .libPaths()
[1] "/home/scR2021/R/x86_64-pc-linux-gnu-library/3.6"
[2] "/usr/local/lib/R/site-library"   
[3] "/usr/lib/R/site-library"   
[4] "/usr/lib/R/library" 

scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ R4
#R version 4.0.3 (2020-10-10)
> .libPaths()
[1] "/home/scR2021/miniconda3/lib/R/library"

#
shell界面里面双R版本及包的安装路径配置完毕!!!根据需求调用不同的R版本。

3.2 Rstudio Server的切换配置

查看RStudio Server的一些常用命令 :

(我是又复制了一遍到这里,因为后面切换版本要时不时用到shell里面的操作,而不是仅仅在网页版干瞪眼)

sudo rstudio-server verify-installation #查看安装是否正常
sudo rstudio-server start   #启动RStudio-server
sudo rstudio-server status  #查看RStudio-server
sudo rstudio-server stop #关闭RStudio-server
sudo rstudio-server restart #重启RStudio-server

修改配置文件:

R3.6版本:

scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo vim /etc/rstudio/rserver.conf
# Server Configuration File
rsession-which-r=/usr/bin/R
#rsession-which-r=/home/scR2021/miniconda3/bin/R
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo rstudio-server status
#Active: active (running)
#此时登录http://8.142.113.13:8787,用户名scR2021,R version 3.6.3 (2020-02-29)

R4.0版本:

scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo vim /etc/rstudio/rserver.conf
# Server Configuration File
#rsession-which-r=/usr/bin/R
rsession-which-r=/home/scR2021/miniconda3/bin/R
#即把前面一个版本(R3.6)的用#注释掉,RStudio Server启动时调用后面一个版本的R(R4.0)
#esc退出编辑,:wq保存并退出vim
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo rstudio-server stop
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo rstudio-server status
#rsession-scR2021[8632]: ERROR r error 4
#网页已经无法访问了。
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo rstudio-server start
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo rstudio-server status
#Active: active (running)
#然后再次登录http://8.142.113.13:8787,用户名scR2021,R version 4.0.3 (2020-10-10)

![](Rstudio server 双R版本配置和切换.assets/1619507320599.png)

通过在shell里面切换/etc/rstudio/rserver.conf文件中rsession-which-r所指定的R的位置就可以调用不同版本的R,注意需要在shell里面对rstudio-server进行启动和停止,并可查看rstudio-server的状态。网页版只会报错,不能提供更多的信息。

3.3 R4中R包的安装和调用

有些R包需要调用很多动态库和一些依赖包,在R中安装经常报错,很伤脑细胞,还打击学习生信的积极性,经常让人累觉不爱,所幸现在conda越来越万能,所以遇到不省心的R包可以尝试conda安装:

参考《遇到不省心的Rstudio Server安装R包总是失败怎么办?》—— 豆豆花花  生信星球 https://www./post/cnposts/243/

R4中有难装的包,R3中也可能会有,所以为了避免混淆,conda装R包,还是分别创建环境,下面以R4为例:

scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ conda create -n R4
scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ source activate R4
(R4) scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ R
#R version 4.0.3 (2020-10-10) 
> .libPaths()
[1] "/home/scR2021/miniconda3/lib/R/library"
(R4) scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ R4
#R version 4.0.3 (2020-10-10) 
> .libPaths()
[1] "/home/scR2021/miniconda3/lib/R/library"
#R和R4启动的都是4.0的R,建议以后还是习惯R4调用4.0的R

(R4) scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ R3
#R version 3.6.3 (2020-02-29)
> .libPaths()
[1] "/home/scR2021/R/x86_64-pc-linux-gnu-library/3.6"
[2] "/usr/local/lib/R/site-library"   
[3] "/usr/lib/R/site-library"   
[4] "/usr/lib/R/library"

(R4) scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ conda install r-seurat
(R4) scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ R
#R version 4.0.3 (2020-10-10)
> .libPaths()
[1] "/home/scR2021/miniconda3/envs/R4/lib/R/library"
#已经不是用conda装包之前的/home/scR2021/miniconda3/lib/R/library了!!!!
> library(Seurat)
#Attaching SeuratObject
> packageVersion("Seurat"
#[1] '4.0.1’
#shell里面用conda装Seurat成功。R4.0里面Seurat是4.0.1版的。

3.4 RStudio Server调用conda装的R包

#在网页版Rstudio左下角Console输
file.edit('~/.Rprofile')
# 左上角打开一个.Rprofile编写界面,将下面的内容黏贴进去保存并退出
options("repos" = c(CRAN="https://mirrors.tuna./CRAN/")) 
options(BioC_mirror="https://mirrors.ustc.edu.cn/bioc/")

R_LIBS="/home/scR2021/miniconda3/envs/R4/lib/R/library"
# 最后保存退出

(R4) scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo rstudio-server restart
#rsession-scR2021[8787]: ERROR r error 4

#
网页上需要退出(Quit the current R session)并重启(Start New Session)
#可以看到R_LIBS的值为/home/scR2021/miniconda3/envs/R4/lib/R/library,我还是没能实现自动加载。

又有新的报错,解决方案参考:

搞定 libstdc++.so.6: version `GLIBCXX_3.4.21' not found

https://blog.csdn.net/phdsky/article/details/84104769

library(Seurat)
Error: package or namespace load failed for 'Seurat’ in dyn.load(file, DLLpath = DLLpath, ...):
 unable to load shared object '/home/scR2021/miniconda3/envs/R4/lib/R/library/Rcpp/libs/Rcpp.so':
  /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /home/scR2021/miniconda3/envs/R4/lib/R/library/Rcpp/libs/Rcpp.so)
#首先先查看/usr/lib/x86_64-linux-gnu/libstdc++.so.6这个库的信息
(R4) scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX  #确实没有GLIBCXX_3.4.26,最新只有GLIBCXX_3.4.25
#全系统搜
(R4) scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo find / -name "libstdc++.so.6*"
#这个时候还是会出来一大堆,可以找到很多库;现在需要你去确认眼神,然后遇到对的库搞一下
#我先选/home/scR2021/miniconda3/lib/libstdc++.so.6
(R4) scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ strings /home/scR2021/miniconda3/lib/libstdc++.so.6 | grep GLIBCXX
#真的有GLIBCXX_3.4.26
(R4) scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ strings /home/scR2021/miniconda3/lib/libstdc++.so.6 | grep GLIBCXX_3.4.26
#GLIBCXX_3.4.26
#GLIBCXX_3.4.26
#有两个!!
#找到有GLIBCXX_3.4.26的库,ll查看它链接的具体库文件,我的是/home/scR2021/miniconda3/lib/libstdc++.so.6
(R4) scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ ll /home/scR2021/miniconda3/lib/libstdc++.so.6
#lrwxrwxrwx 1 scR2021 scR2021 19 Apr 27 14:44 /home/scR2021/miniconda3/lib/libstdc++.so.6 -> libstdc++.so.6.0.28*
(R4) scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ strings /home/scR2021/miniconda3/lib/libstdc++.so.6.0.28 | grep GLIBCXX_3.4.26
#软链接到该目录下的libstdc++.so.6.0.28,#这个都支持到GLIBCXX_3.4.28了
#最终找到/home/scR2021/miniconda3/lib/libstdc++.so.6.0.28
#把这个库libstdc++.so.6.0.28拷贝到apt报错的路径/usr/lib/x86_64-linux-gnu/,然后删除/usr/lib/x86_64-linux-gnu/libstdc++.so.6这个软链接,重新再给建立一个链接到libstdc++.so.6.0.28这个库上。
(R4) scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo cp /home/scR2021/miniconda3/lib/libstdc++.so.6.0.28 /usr/lib/x86_64-linux-gnu/
(R4) scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo rm /usr/lib/x86_64-linux-gnu/libstdc++.so.6
(R4) scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.28 /usr/lib/x86_64-linux-gnu/libstdc++.so.6
(R4) scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX   #现在有GLIBCXX_3.4.26了,最新的是GLIBCXX_3.4.28

#重启rstudio-server
(R4) scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo rstudio-server stop
(R4) scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo rstudio-server start
(R4) scR2021@iZ0jlac7d4cxlrxfyzxkgoZ:~$ sudo rstudio-server status

之后再登录http://8.130.51.225:8787/,用户名scR2021,或者Start New Session:

大功告成!!!!!!

参考:

https://docs./ide/server-pro/r-versions.html#r-versions

https://www.jianshu.com/p/20cbecc83408

https://www.jianshu.com/p/44169741bd22

文末友情推荐

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多