テクニカルFAQ

質問

PowerChute Business EditionをSELinuxを有効にしたRed Hat Enterprise Linux v5.xにインストールできない

このページでは、PowerChute Business Editionを、SELinuxが有効になっているRed Hat Enterprise Linux v5.xにインストールできない問題について説明しています。

【問題の概要】
Red Hat Enterprise Linux v5.xで、SELinuxが有効(Enforcing)になっていると、PowerChute Business Editionがインストールできない。

【対象バージョン】
PowerChute Business Edition Agentバージョン: v9.1.1, v9.0.3, v9.2.1, v9.0.4

【対象OS】
Red Hat Enterprise Linux v5.8, 5.9, 5.10, 5.11 x64 および x86

【問題の詳細】
SELinuxが有効になっている状態でinstall_pbeagent_linux.shを実行しAgentをインストールすると、以下のメッセージが表示され、インストールに失敗します。

Error: dl failure on line xxx
Error: failed /bin/java/jre/1.7.0_25/lib/i386/server/libjvm.so, because /bin/java/jre/1.7.0_25/lib/i386/server/libjvm.so: cannot restore segment prot after reloc: Permission denied

Red Hat Enterprise LinuxはデフォルトではSELinuxが "Enforcing"モード(有効)になっていますが、本ページで説明する問題は、SELinuxによってアクセスポリシーが強化されているために起きる問題です。
SELinuxのアクセスポリシーによって、Agentのインストーラがメモリーセグメントのメモリー保護特性を変更することが許可されていないため、エラーとなります。

【回避方法】
1. 以下のコマンドを実行し、libjvm.soファイルのセキュリティコンテキストを変更します。
コマンドラインで以下のコマンドを入力してください。

chcon -t textrel_shlib_t <jreパス>/lib/i386/server/libjvm.so

ここで、<jreパス>は、PoewrChuteにバンドルされているJava JREのパスを示します。

例: PowerChute Business Edition v9.2.1の場合
chcon -t textrel_shlib_t /usr/local/bin/java/jre/1.8.0_102/lib/i386/server/libjvm.so
 
PowerChute Business Edition
バージョン
JREパス
9.2.1/9.0.4 /usr/local/bin/java/jre/1.8.0_102
9.1.1/9.0.3 /bin/java/jre/1.7.0_25


2. PowerChute Agentの設定スクリプトを実行し、インストールを行います。
コマンドラインで以下のコマンドを入力してください。

cd /opt/APC/PowerChuteBusinessEdition/Agent
./config.sh
これは役に立ちましたか?
私たちは情報を改善するために何ができるのでしょうか?