本家様 https://rstudio.com/
Rの被せものなRStudio
Rを使うならRStudio経由で使った方が断然楽
ってまずはその「R」のインストール
「R」の本家様 https://www.r-project.org/>+https://www.r-project.org/], [[https://cran.ism.ac.jp/
CentOS7ではR-core-3.6.0(epel)で提供されている。CentOS8ならこれが R-core-4.0.3 である
CentOS7のままでR-core-4.X.Xを使うには Third-Party の「Springdale Computational x86_64」リポジトリを利用する必要がある
RStudio/R4
単純に最新のRをコンパイルすれば足りる話だけど
Rのインストール †
CentOS7/CentOS8ともに epel リポジトリで提供されている. なので単純に
yum install epel-release
yum install R
で完了となる.
しかしroot権限を持たないユーザで「R」を使いたい場合はどうすれば?となるが、
方法としてはソースからコンパイルする、あるいは無理やり yum/dnf でパッケージを自分の配下にインストールしてしまう。
この2点があるみたい。
下記はrootではない一般ユーザで自分のホームディレクトリに「R」をyum/dnfを使ってインストールする手順である。
まずパッケージは yumdownloader を使って入手します。yum経由なのでyumの設定ファイル「yum.conf」を用意します
[saber@centos7 ~]$ vi yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release
[epel]
name=Extra Packages for Enterprise Linux 7 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch
metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch
failovermethod=priority
enabled=1
[saber@centos7 ~]$
その後、作ったこの「yum.conf」を使って「R」と「R」が依存するパッケージを取得します。
まずは、保存先を用意します。
[saber@centos7 ~]$ mkdir ~/rpm
そして「yumdownloader」コマンドを実行します
[saber@centos7 ~]$ yumdownloader --destdir ~/rpm --resolve R -c yum.conf
保存先となる「~/rpm」の中身は下記になります
[saber@centos7 ~]$ ls rpm/
bzip2-devel-1.0.6-13.el7.x86_64.rpm
expat-devel-2.1.0-11.el7.x86_64.rpm
:
R-3.6.0-1.el7.x86_64.rpm
R-core-3.6.0-1.el7.x86_64.rpm
R-core-devel-3.6.0-1.el7.x86_64.rpm
R-devel-3.6.0-1.el7.x86_64.rpm
R-java-3.6.0-1.el7.x86_64.rpm
R-java-devel-3.6.0-1.el7.x86_64.rpm
:
[saber@centos7 ~]$
最後にこの取得したrpmファイルを展開します。展開先の起点は「~/apps」にしています
[saber@centos7 ~]$ mkdir ~/apps ; cd apps
[saber@centos7 apps]$ for i in `find ../ -name *.rpm` ; do echo $i; rpm2cpio $i | cpio -id ; done
これで「~/apps」を起点にR環境が構築できました。
使用方法
単純にインストールしただけでは実際にはつかなく、ちょいと修正する必要があります
- /home/<ユーザ>/.bashrc
下記を追記します. PATHとLD_LIBRARY_PATH環境変数の追記です
export PATH=$HOME/apps/usr/lib64/R/bin:$HOME/apps/usr/sbin:$HOME/apps/usr/bin:$HOME/apps/bin:$PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/apps/usr/lib:$HOME/apps/usr/lib64
- /home/saber/apps/usr/lib64/R/bin/R
下記のように修正します
| --- R.orig 2020-10-04 01:47:45.128101924 +0900
+++ R 2020-10-04 01:51:14.706988852 +0900
@@ -1,7 +1,7 @@
#!/bin/sh
# Shell wrapper for R executable.
-R_HOME_DIR=/usr/lib64/R
+R_HOME_DIR=/home/saber/apps/usr/lib64/R
if test "${R_HOME_DIR}" = "/usr/lib64/R"; then
case "linux-gnu" in
linux*)
@@ -32,11 +32,11 @@
fi
R_HOME="${R_HOME_DIR}"
export R_HOME
-R_SHARE_DIR=/usr/share/R
+R_SHARE_DIR=/home/saber/apps/usr/share/R
export R_SHARE_DIR
-R_INCLUDE_DIR=/usr/include/R
+R_INCLUDE_DIR=/home/saber/apps/usr/include/R
export R_INCLUDE_DIR
-R_DOC_DIR=/usr/share/doc/R-3.6.0
+R_DOC_DIR=/home/saber/apps/usr/share/doc/R-3.6.0
export R_DOC_DIR
# Since this script can be called recursively, we allow R_ARCH to
|
これで「R」の調整は完了
次に、本題となる RStudio をインストールします
RStudioをホームディレクトリに配置 †
こちらも自身のホームディレクトリにインストールして使うことにします。
*ダウンロードサイトに rpm ファイルがあるので、それを yum localinstall すれば完了なのですが..
まずインストールファイルを取得します。
https://rstudio.com/products/rstudio/download/
にて
「Zip/Tarballs」の「rstudio-1.3.1093-x86_64-fedora.tar.gz」を取得します. これをホームディレクトリに配置します
っで展開
[saber@centos7 ~]$ mkdir ~/apps <-- すでにあればmkdirは不要
[saber@centos7 ~]$ cd ~/apps
[saber@centos7 apps]$ tar xzf ~/rstudio-1.3.1093-x86_64-fedora.tar.gz
実行
まずはRStudio のパスを定義します
[saber@centos7 ~]$ export PATH=/home/saber/apps/rstudio-1.3.1093/bin:$PATH
[saber@centos7 ~]$ rstudio
暫くすると

となる
*Xアプリケーションで表示されるので別マシンからのアクセスの際には
「ssh -X <ホスト名>」と「-X」なり「-Y」なりを付けて実行しないと画面が転送されないです。