经验怪谈

技术文章

从源码编译 R,并安装 RStudio Server

要最新 R 就走源码。RStudio Server 默认 8787,按内网策略放行,不要一上来关掉 SELinux。

2026-08-30 · 科研软件 · Linux / 服务器

从源码编译最新版(需要 MPI 环境)。自己编是最保险拿到最新版(如 R 4.5.1 或将来版本)的方法。

安装包:CRAN R-4

现场笔记的 prefix 写在 /home/software/。这里改成 /opt/software/,后面 configure / make / 装 RStudio 的步骤不变。

编译 R

Linux 示例(Rocky / RHEL 9):

sudo dnf install epel-release -y
sudo dnf config-manager --set-enabled crb
sudo dnf groupinstall "Development Tools" -y
sudo dnf install libcurl-devel openssl-devel libxml2-devel xz-devel bzip2-devel zlib-devel -y

下载源码(以 4.5.1 为例,换成当时最新版):

cd /usr/local/src
sudo wget https://cran.r-project.org/src/base/R-4/R-4.5.1.tar.gz
sudo tar zxvf R-4.5.1.tar.gz
cd R-4.5.1

配置、编译、安装,可指定安装位置:

sudo ./configure --prefix=/opt/software/R-4.5.1 --with-x=yes --enable-R-shlib --with-blas --with-lapack
sudo make -j$(nproc)
sudo make install
/opt/software/R-4.5.1/bin/R --version

命令行用这个前缀下的 R 调用最新版。

RStudio Server

Posit 下载页 拿对应发行版的官方包。现场笔记用的是 RHEL 9 的 rpm,文件名以你下到的为准:

wget https://download2.rstudio.org/server/rhel9/x86_64/rstudio-server-rhel-2023.06.0-421-x86_64.rpm
sudo dnf install rstudio-server-rhel-2023.06.0-421-x86_64.rpm

SELinux

原文写「重要:关闭 SELinux,或者设置为宽松模式 permissive」。公开笔记把这一步留着,生产上先 permissive,不要直接 SELINUX=disabled

sudo sed -i 's/^SELINUX=.*/SELINUX=permissive/' /etc/selinux/config
grep SELINUX /etc/selinux/config

改完需要重启才永久生效。当场可用 sudo setenforce 0。若 SELinux 拦住服务,先看 audit,再考虑 permissive。

开放 8787 端口

sudo firewall-cmd --permanent --add-port=8787/tcp
sudo firewall-cmd --reload
sudo firewall-cmd --list-ports | grep 8787

只在需要的网段放行,不要对公网裸奔。

查看主要文件位置:

ls -la /usr/lib/rstudio-server/
ls -la /etc/rstudio/
systemctl cat rstudio-server

用 systemd 管理:

sudo systemctl start rstudio-server.service
sudo systemctl status rstudio-server.service
sudo systemctl enable rstudio-server.service

同一网段浏览器访问 http://<服务器内网地址>:8787。用系统账户登录。