WSL2-ubuntu18.04配置笔记 :6Rstudioserver配置

WSL2 ubuntu18.04配置-6 Rstudioserver配置

  • 安装R最新版本
  • 安装R-studioserver
  • 启动Rstudio-server
  • 安装相关的依赖库
  • 创建多用户
    • 查看当前系统下所有的用户组
    • 建立新的用户 ruser1
  • 内网穿透
    • 内网穿透工具
      • 配置内网穿透建立转发隧道
      • 安装
      • 启动

主要参考Rstudio-server 官网的document

安装R最新版本

# update indices
sudo apt update -qq
# install two helper packages we need
sudo apt install --no-install-recommends software-properties-common dirmngr
# add the signing key (by Michael Rutter) for these repos
# To verify key, run gpg --show-keys /etc/apt/trusted.gpg.d/cran_ubuntu_key.asc 
# Fingerprint: E298A3A825C0D65DFD57CBB651716619E084DAB9
wget -qO- https://cloud.r-project.org/bin/linux/ubuntu/marutter_pubkey.asc | sudo tee -a /etc/apt/trusted.gpg.d/cran_ubuntu_key.asc
# add the R 4.0 repo from CRAN -- adjust 'focal' to 'groovy' or 'bionic' as needed
sudo add-apt-repository "deb https://cloud.r-project.org/bin/linux/ubuntu $(lsb_release -cs)-cran40/"

lsb_release -cs 命令用来查看ubuntu 系统的版本号,比如我的18.04版本,会返回bionic

安装R-studioserver

对于Debian 10 / Ubuntu 18 / Ubuntu 20版本的系统

sudo apt-get install gdebi-core
wget https://download2.rstudio.org/server/bionic/amd64/rstudio-server-2022.07.1-554-amd64.deb
sudo gdebi rstudio-server-2022.07.1-554-amd64.deb

启动Rstudio-server

rstudio-server  start

查看ip地址

ifconfig

在浏览器中输入ip地址和端口,默认为8787端口,需要注意的是不能使用root用户登陆
http://192.168.31.242:8787/

安装相关的依赖库

在linux上安装R包的时候发现缺少几个库,目前只发现以下几个,后续有遇到继续记录

apt-get install cmake libcurl4-openssl-dev libssl-dev libxml2-dev

创建多用户

同一个用户不能同时登录Rstudio,为了将服务器资源共享给其他同学,因此需要建立多个用户、

查看当前系统下所有的用户组

cat /etc/group

以下只截取了部分,可以看到已经有名为 rstudio-server的用户组,这是rstudio-server默认建立的用户,因此直接使用即可,当然也可以建立其他用户组


messagebus:x:107:
lxd:x:108:
mlocate:x:109:
uuidd:x:110:
ssh:x:111:
landscape:x:112:
admin:x:113:
netdev:x:114:ms
ms:x:1000:
docker:x:1001:root
rstudio-server:x:999:

建立新的用户 ruser1

useradd -g rstudio-server -m -N -s /bin/bash ruser1
-g rstudio-server # 将新用户添加到rstudio-server组
-m #建立用户目录 默认为 /home/username
-N #不建立以username为名的组,默认情况下会建立
-s /bin/bash #指定shell环境

设置用户密码

passwd ruser1

查看家目录的权限

ls -l /home
drwxr-xr-x 6 ruser1 rstudio-server 4096 Jul 29 17:09 ruser1

d 文件类型为目录
第一个rwx 代表目录所有者ruser1的权限
第二个r-x 代表同组rstudio-server其他用户的权限
第三个r-x 代表其他用户的权限

至此已经安装完成rstudio-server并建立了新的用户,每个用户登陆后在其用户目录下生存 R 目录,里面用来存放用户自己安装的R包,用户之间互不干扰

内网穿透

为了在家也能继续使用rstudio-server,因此配置rstudio-server的内网转发

内网穿透工具

Sunny-Ngrok 付费工具但比较便宜,使用起来也比较简单
https://www.ngrok.cc/
其安装和配置在官网有详细的教程

配置内网穿透建立转发隧道

具体配置方式请移步官网,这里仅展示配置后的结果

WSL2-ubuntu18.04配置笔记 :6Rstudioserver配置_第1张图片
本地转发端口为127.0.0.1:8787
重要的信息主要有

  • clientid 在我的信息里面,也就值你的昵称
  • 隧道id
  • http验证用户
  • http验证用户密码
  • 服务器地址

安装

wget https://www.ngrok.cc/sunny/linux_amd64.zip?v=2.1
#我下载后文件名变成了'linux_amd64.zip?v=2.1' 但不影响使用,直接解压就好
unzip 'linux_amd64.zip?v=2.1'
cd  linux_amd64

启动

其中xxxxxxx1代表用户昵称 xxxxxxx2代表隧道id

./sunny clientid xxxxxxx1 xxxxxxxx2

启动后效果如下,可以使用红线部分的网址进行远程登陆

WSL2-ubuntu18.04配置笔记 :6Rstudioserver配置_第2张图片
登陆时会要求进行用户验证,即上一步的http验证用户和http验证密码
用户验证后即可以进入rstudio-server登陆界面

你可能感兴趣的:(WSL2配置笔记,ubuntu,WSL2,linux)