DB/R/統計/データサイエンス/投資話についてつらつらと

世のため自分のためのアウトプット

R Trouble Shooting

【yum】Linux Rのアンインストール/ダウングレード【Oracle R】

投稿日:

LinuxでRのダウングレード(アンインストールおよび、最新版出ないRのインストール方法)についてご紹介します。
通常パッケージ名をバージョンを指定しないでインストールすると最新版がインストールされます。

流れとしては、以下になります。

  1. 現在のRのアンインストール
  2. ダウングレード先の RのバージョンのR-coreを探す
  3. ダウングレード版のRを指定してインストール

また、Rのインストール方法は以下の4章を参照してください。

【Oracle R】Oracle R Enterpriseのインストール方法

~目次~

1. Rのアンインストール(yum remove)

2. 旧バージョンのRの探し方(yum --showduplicates search)

3. ダウングレード版のRのインストール方法

4. [補足]library(ORE)時のエラーについて

1. Rのアンインストール(yum remove)

Rに限らず、yumでインストールしたものはyum removeでアンインストールできます。

removeする前に、現在のパッケージの詳細を確認します。
現在はR3.3がインストールされている状態です。

[root@oracle ~]# rpm -qa | grep R-
R-devel-3.3.0-2.el6.x86_64
OpenEXR-libs-1.6.1-8.1.el6.x86_64
R-3.3.0-2.el6.x86_64
R-core-3.3.0-2.el6.x86_64
[root@oracle ~]# R --version
Oracle Distribution of R version 3.3.0  (--) -- "Supposedly Educational"
Copyright (C)  The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R関係の3つのパッケージがインストールされているので、それぞれをアンインストールします。
なお、おそらくR-coreをremoveすると、R-develも一緒にremoveされます。
※実行結果は省略

[root@oracle oreserver]# yum remove R
[root@oracle oreserver]# yum remove R-core
[root@oracle oreserver]# yum remove R-devel

上記コマンドを実行すると、Rのパッケージがアンインストールされていることが確認できます。

[root@oracle ~]# rpm -qa | grep R-
OpenEXR-libs-1.6.1-8.1.el6.x86_64

 

2. 旧バージョンのRの探し方(yum --showduplicates search)

次にインストールしたいバージョンのパッケージを検索します。

コマンドは以下になります。

yum --showduplicates search [パッケージ名]

R-coreで検索すると以下のような結果になります。

[root@oracle ~]# yum --showduplicates search R-core
読み込んだプラグイン:refresh-packagekit, security, ulninfo
============================= N/S Matched: R-core ==============================
R-core-2.15.1-1.el6.x86_64 : The minimal R components necessary for a functional
                           : runtime
R-core-2.15.2-1.el6.x86_64 : The minimal R components necessary for a functional
                           : runtime
R-core-2.15.3-1.el6.x86_64 : The minimal R components necessary for a functional
                           : runtime
R-core-3.0.1-1.el6.x86_64 : The minimal R components necessary for a functional
                          : runtime
R-core-3.0.1-2.el6.x86_64 : The minimal R components necessary for a functional
                          : runtime
R-core-3.1.1-1.el6.x86_64 : The minimal R components necessary for a functional
                          : runtime
R-core-3.1.1-2.el6.x86_64 : The minimal R components necessary for a functional
                          : runtime
R-core-3.2.0-2.el6.x86_64 : The minimal R components necessary for a functional
                          : runtime
R-core-3.3.0-2.el6.x86_64 : The minimal R components necessary for a functional
                          : runtime
R-core-extra-3.3.0-2.el6.x86_64 : Compression libraries and dependencies
                                : required for R-3.3.0+

  Name and summary matches only, use "search all" for everything.

例えば3.2をインストールしたい場合は"R-core-3.2.0-2.el6.x86_64"をインストールすることになります。

RとR-develについても同様に実行ください。

3. ダウングレード版のRのインストール方法

2章で検索したパッケージ名を指定してインストールします。ここではR-core-3.2.0-2.el6.x86_64を指定します。

[root@oracle ~]# yum install R-core-3.2.0-2.el6.x86_64
読み込んだプラグイン:refresh-packagekit, security, ulninfo
インストール処理の設定をしています
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> Package R-core.x86_64 0:3.2.0-2.el6 will be インストール
--> 依存性解決を終了しました。

依存性を解決しました

================================================================================
 パッケージ    アーキテクチャ
                             バージョン          リポジトリー              容量
================================================================================
インストールしています:
 R-core        x86_64        3.2.0-2.el6         public_ol6_addons         49 M

トランザクションの要約
================================================================================
インストール         1 パッケージ

総ダウンロード容量: 49 M
インストール済み容量: 87 M
これでいいですか? [y/N]y
パッケージをダウンロードしています:
R-core-3.2.0-2.el6.x86_64.rpm                            |  49 MB     00:44     
rpm_check_debug を実行しています
トランザクションのテストを実行しています
トランザクションのテストを成功しました
トランザクションを実行しています
  インストールしています  : R-core-3.2.0-2.el6.x86_64                       1/1 
  Verifying               : R-core-3.2.0-2.el6.x86_64                       1/1 

インストール:
  R-core.x86_64 0:3.2.0-2.el6                                                   

完了しました!

なお、Rをinstallする際にlibRmathパッケージが残っているとエラーとなる場合があります。
その場合は、libRmathパッケージもremoveしてください。

[root@oracle ~]# yum install R-3.2.0-2.el6.x86_64
読み込んだプラグイン:refresh-packagekit, security, ulninfo
インストール処理の設定をしています
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> Package R.x86_64 0:3.2.0-2.el6 will be インストール
--> 依存性の処理をしています: libRmath-devel = 3.2.0-2.el6 のパッケージ: R-3.2.0-2.el6.x86_64
--> 依存性解決を終了しました。
エラー: パッケージ: R-3.2.0-2.el6.x86_64 (public_ol6_addons)
             要求: libRmath-devel = 3.2.0-2.el6
【以下略】
##libRmathをremove
[root@oracle ~]# yum remove libRmath
読み込んだプラグイン:refresh-packagekit, security, ulninfo
削除処理の設定をしています
依存性の解決をしています
【以下略】
###Rパッケージの再インストール
[root@oracle ~]# yum install R-3.2.0-2.el6.x86_64
読み込んだプラグイン:refresh-packagekit, security, ulninfo
インストール処理の設定をしています
依存性の解決をしています
【以下略】

これでRのバージョンを3.3から3.2へダウングレードすることができました。

[root@oracle ~]# rpm -qa | grep R-
R-core-3.2.0-2.el6.x86_64
OpenEXR-libs-1.6.1-8.1.el6.x86_64
R-devel-3.2.0-2.el6.x86_64
R-3.2.0-2.el6.x86_64
[root@oracle ~]# R --version
Oracle Distribution of R version 3.2.0  (--) -- "Full of Ingredients"
Copyright (C)  The R Foundation for Statistical Computing
Platform: x86_64-unknown-linux-gnu (64-bit)

4. [補足]library(ORE)時のエラーについて

上記の手順については、Oracle R Enterprise(ORE)導入時に以下のエラーが出たため対処しました。

こちらは、RのバージョンがOREのバージョンに合っていない場合にlibrary(ORE)に失敗する事象です。
(ORE1.5.1にはRのバージョンは3.3となる必要がありますが、3.5を誤ってインストールしていた)

> library(ORE)
 要求されたパッケージ OREbase をロード中です 
 要求されたパッケージ OREcommon をロード中です 
Error: package or namespace load failed for ‘OREcommon’:
 package ‘OREcommon’ was installed by an R version with different internals; it needs to be reinstalled for use with this R version
 エラー:  パッケージ ‘OREcommon’ をロードできませんでした

1-3章の手順を実施後に再度実行することにより回避できました。

> library(ORE)
 要求されたパッケージ OREbase をロード中です 
 要求されたパッケージ OREcommon をロード中です 

 次のパッケージを付け加えます: ‘OREbase’ 

 以下のオブジェクトは ‘package:base’ からマスクされています: 

     cbind, data.frame, eval, interaction, order, paste, pmax, pmin,
    rbind, table 

 要求されたパッケージ OREembed をロード中です 
 要求されたパッケージ OREstats をロード中です 
 要求されたパッケージ OREgraphics をロード中です 

 次のパッケージを付け加えます: ‘OREgraphics’ 

 以下のオブジェクトは ‘package:grDevices’ からマスクされています: 

     xy.coords 

 要求されたパッケージ OREeda をロード中です 
 要求されたパッケージ OREmodels をロード中です 
 要求されたパッケージ OREdm をロード中です 
 要求されたパッケージ OREpredict をロード中です 
 要求されたパッケージ ORExml をロード中です

-R, Trouble Shooting

Copyright© 世のため自分のためのアウトプット , 2020 All Rights Reserved Powered by STINGER.