1.5. 既知の問題
rh-mysql80
, BZ#1646363mysql-connector-java
データベースコネクターは MySQL 8.0 サーバーでは動作しません。rh-mysql80
, BZ#1646158- MySQL 8.0 ではデフォルトの文字セットが
utf8mb4
に変更になりましたが、この文字セットはphp-mysqlnd
データベースコネクターではサポートされません。そのため、php-mysqlnd
がデフォルト設定で接続できません。この問題を回避するには、既知の文字セットを MySQL サーバー設定のパラメーターとして指定します。たとえば、/etc/opt/rh/rh-mysql80/my.cnf.d/mysql-server.cnf
ファイルを read に変更します。[mysqld] character-set-server=utf8
httpd24
コンポーネント- httpd24 Software Collection に含まれる cURL ツールの更新バージョンは、HTTP/2 をサポートしません。そのため、このバージョンの cURL の HTTP/2 サポートに依存するスクリプトは失敗するか、HTTP/1.1 にフォールバックします。
httpd24
コンポーネント、BZ#1429006- httpd 2.4.27 以降、
mod_http2
モジュールはデフォルトのprefork
Multi-Processing Module (MPM) でサポートされなくなりました。HTTP/2 サポートを有効にするには、/opt/rh/httpd24/root/etc/httpd/conf.modules.d/00-mpm.conf
で設定ファイルを編集し、event
またはworker
MPM に切り替えます。HTTP/2 の server-push 機能は、64 ビット ARM アーキテクチャー、IBM Z、および IBM POWER (リトルエンディアン) では機能しないことに注意してください。 httpd24
コンポーネント、BZ#1327548mod_ssl
モジュールは、Red Hat Enterprise Linux 6 または Red Hat Enterprise Linux 7.3 以前で ALPN プロトコルに対応していません。そのため、ALPN を使用した TLS 接続の HTTP/2 へのアップグレードをサポートするクライアントは、HTTP/1.1 のサポートに制限されます。-
httpd24
コンポーネント、BZ#1224763 - FastCGI Process Manager (PHP-FPM) で
mod_proxy_fcgi
モジュールを使用する場合は、httpd は正しいポート9000
ではなく、デフォルトで FastCGI プロトコルのポート8000
を使用します。この問題を回避するには、正しいポートを明示的に指定します。 httpd24
コンポーネント、BZ#1382706- SELinux を有効にすると、
LD_LIBRARY_PATH
環境変数は httpd が呼び出す CGI スクリプトに渡されません。そのため、httpd が実行する CGI スクリプトの/opt/rh/httpd24/service-environment
ファイルで有効にした Software Collections から実行ファイルを呼び出すことができない場合があります。この問題を回避するには、CGI スクリプト内から希望どおりにLD_LIBRARY_PATH
設定します。 -
httpd24
コンポーネント - httpd24 Software Collection からの Apache Portable Runtime (APR) および APR-util ライブラリーに対する外部アプリケーションのコンパイルはサポートされていません。LD_LIBRARY_PATH 環境変数は、この Software Collection のいずれのアプリケーションでも不要であるため、httpd24 に設定されていません。
rh-python35
、rh-python36
コンポーネント、BZ#1499990Babel
がタイムゾーンのサポートに使用しているpytz
モジュールは、rh-python35、および rh-python36 Software Collections には含まれていません。その結果、ユーザーがBabel
から dates モジュールをインポートしようとすると、トレースバックが返されます。この問題を回避するには、pip install pytzコマンドを使用して、pypi
公開リポジトリーからpipパッケージマネージャーを介してpytz
をインストールします。rh-python36
コンポーネント ( )- numpy が提供する特定の複雑な三角関数は、64 ビット ARM アーキテクチャー、IBM Z、および IBM POWER (リトルエンディアン) で誤った値を返す可能性があります。AMD64 および Intel 64 のアーキテクチャーは、この問題の影響を受けません。
python27
コンポーネント、BZ#1330489- python27-python-pymongo パッケージがバージョン 3.2.1 に更新されました。このバージョンは、これまでに同梱されているバージョン 2.5.2 と完全に互換性がないことに注意してください。詳細はhttps://api.mongodb.org/python/current/changelog.htmlを参照してください。
-
python27
コンポーネント - Red Hat Enterprise Linux 7 では、ユーザーがpython27-python-debuginfo パッケージをインストールしようとすると、
/usr/src/debug/Python-2.7.5/Modules/socketmodule.c
ファイルが、コアシステムにインストールされているpython-debuginfo パッケージの対応するファイルと衝突します。その結果、python27-python-debuginfo のインストールに失敗します。この問題を回避するには、python-debuginfo パッケージをアンインストールしてから、python27-python-debuginfo パッケージをインストールしてください。 scl-utils
コンポーネント で修正済み- Red Hat Enterprise Linux 7.5 以前では、scl-utils パッケージのアーキテクチャー固有のマクロバグにより、
<collection>/root/usr/lib64/
ディレクトリーには 64 ビット ARM アーキテクチャーおよび IBM POWER (リトルエンディアン) のパッケージの所有権が正しくありません。したがって、Software Collection がアンインストールされると、このディレクトリーは削除されません。この問題を回避するには、Software Collection を削除する際に<collection>/root/usr/lib64/
を手動で削除します。 -
rh-ruby24
、rh-ruby23
コンポーネント RubyGem
のインストールパスは、複数の Software Collection が有効になっている順番に応じて決定されます。依存するコレクションをサポートするために、Red Hat Software Collections 2.3 で出荷されたRuby 2.3.1 から必要な順序が変更されました。その結果、RPM ビルド時にgem
のインストールに使用されるRubyGem
のパスは、Software Collection が誤った順序で提供されている場合には無効になります。例えば、RPM のスペックファイルにscl enable rh-ror50 rh-nodejs6
が含まれている場合、ビルドに失敗するようになりました。この問題を回避するには、rh-ror50 Software Collection を最後に有効にします。例えば、scl enable rh-nodejs6 rh-ror50 のようにします。rh-maven35
、rh-maven33
コンポーネント- ユーザーが Red Hat Enterprise Linux システムバージョンのmaven-local パッケージとrh-maven35-maven-local package またはrh-maven33-maven-local package の両方をインストールしている場合、rh-maven35 またはrh-maven33 Software Collection から実行される Java RPM パッケージの構築に使用されるツールXMvn がベースシステムから設定ファイルを読み取ろうとして失敗します。この問題を回避するには、ベースの Red Hat Enterprise Linux システムから maven-local パッケージをアンインストールします。
-
perl
コンポーネント - 複数の
mod_perl.so
ライブラリーをインストール することはできません。したがって、複数の Perl Software Collection からmod_perl
モジュールを使用できません。 -
postgresql
コンポーネント - Red Hat Enterprise Linux 6 の rh-postgresql9* パッケージは、
sepgsql
モジュールを提供しません。この機能には、Red Hat Enterprise Linux 6 では利用できない libselinux バージョン 2.0.99 のインストールが必要であるためです。 -
httpd
、mariadb
、mongodb
、mysql
、nodejs
、perl
、php
、python
、ruby
、およびror
コンポーネント、BZ#1072319 - httpd24、rh-mariadb*、rh-mongodb*、rh-mysql*、rh-nodejs*、rh-perl*、rh-php*、python27、rh-python*、rh-ruby*、または rh-ror* パッケージをアンインストールする際に、依存するパッケージの所有権により、アンインストールの順番が関係することがあります。そのため、一部のディレクトリーおよびファイルはシステム上に残される可能性があるため、削除されない可能性があります。
-
mariadb
、mysql
コンポーネント (BZ#1194611) - MariaDB 10 および MySQL 5.6 以降、rh-mariadb*-mariadb-server および rh-mysql*-mysql-server パッケージでは、デフォルトで
test
データベースが提供されなくなりました。このデータベースは初期化中には作成されませんが、付与テーブルは、test
がデフォルトで作成されたものと同じ値で事前に入力されます。その結果、test
またはtest_*
データベースが後で作成されると、これらのデータベースへのアクセス権限は、新規データベースのデフォルトよりも制限されません。また、ベンチマークを実行している場合、run-all-tests
スクリプトは、サンプルパラメーターを使用してもそのままでは機能しません。テストを実行する前にテストデータベースを作成し、--database
パラメーターにデータベース名を指定する必要があります。パラメーターが指定されていない場合、test
はデフォルトで取得されますが、test
データベースが存在することを確認する必要があります。 -
mariadb
、mysql
、postgresql
、mongodb
コンポーネント ) - Red Hat Software Collections 3.2 には、MySQL 5.7、MySQL 8.0、MariaDB 10.0、MariaDB 10.1、MariaDB 10.2、PostgreSQL 9.5、PostgreSQL 9.6、PostgreSQL 10、MongoDB 3.2、MongoDB 3.4およびMongoDB 3.6 のデータベースが含まれます。Red Hat Enterprise Linux 6 のコアは、以前のバージョンの MySQL および PostgreSQL データベース (クライアントライブラリーおよびデーモン) を提供します。コア Red Hat Enterprise Linux 7 は、MariaDB および PostgreSQL データベース (クライアントライブラリーおよびデーモン) の以前のバージョンを提供します。クライアントライブラリーは、動的言語、ライブラリーなどのデータベースコネクターにも使用されます。PostgreSQL コンポーネントの Red Hat Software Collections データベースパッケージにパッケージ化されたクライアントライブラリーは、サーバーユーティリティーおよびデーモン向けとしてのみ含まれているので、使用しないでください。代わりに、ユーザーはコアシステムで提供されるシステムライブラリーとデータベースコネクターを使用することが想定されます。クライアントライブラリーとデーモンの間で使用されるプロトコルは複数のデータベースバージョン間で安定するため、たとえば PostgreSQL 9.4 デーモンまたは 9.5 デーモンで PostgreSQL 9.2 クライアントライブラリーを使用すると期待どおりに機能します。コアの Red Hat Enterprise Linux 6 および Red Hat Enterprise Linux 7 には MongoDB のクライアントライブラリーが含まれていません。アプリケーションにこのクライアントライブラリーを使用するには、Red Hat Software Collections からのクライアントライブラリーを使用し、この MongoDB クライアントライブラリーにリンクされたアプリケーションを実行するたびに scl enable ... 呼び出しを常に使用する必要があります。
-
mariadb
、mysql
、mongodb
コンポーネント ( ) - ログファイルの作成時に、MariaDB、MySQL、および MongoDB は
/opt/provider/collection/root
接頭辞を利用しません。ログファイルは、/opt/provider/collection/root/var/log/
ではなく、/var/opt/provider/collection/log/
ディレクトリーに保存されることに注意してください。 rh-eclipse46
コンポーネント- サードパーティーの更新サイトからプラグインをインストールされていると、Eclipseが起動に失敗し、ワークスペースのログファイルに
NullPointerException
が発生することがあります。この問題を回避するには、-clean
オプションを付けてEclipseを再起動してください。例:~]$ scl enable rh-eclipse46 "eclipse -clean"
rh-eclipse46
コンポーネント- Eclipse Docker Tooling では、シンタックスハイライトや基本的なコマンドの自動補完機能を備えたDockerfile editorを導入しています。Build Image Wizardを開いた状態で、Edit Dockerfileボタンを押すと、Dockerfile editorがファイルを切り離したエディターウィンドウで開きます。ただし、このウィンドウにはCancelとSaveのボタンはありません。この問題を回避するには Ctrl+Sを押して変更を保存するか、エディター内で右クリックしてコンテキストメニューを表示し、Saveオプションを選択します。変更をキャンセルするには、ウィンドウを閉じます。
rh-eclipse46
コンポーネント- Red Hat Enterprise Linux 7.2 では、Eclipse の
Perf Profile View
の入力に使用されるperfツールにバグがあり、ビュー内の一部のアイテムが Eclipse エディター内のそれぞれの位置に正しくリンクされませんでした。プロファイリングは期待通りに行われますが、Perl Profile View
の一部をクリックしても、エディター内の関連するポジションに移動することはできません。
その他の注意事項
-
rh-ruby*
、rh-python*
、rh-php*
コンポーネント ( ) - 読み取り専用 NFS で Software Collections を使用すると、いくつかの制限があります。
- rh-ruby* Software Collection が読み取り専用 NFS にある間は、Ruby gems をインストールできません。したがって、たとえば、gem install ab コマンドを使用して ab gem をインストールしようとすると、以下のようなエラーメッセージが表示されます。
ERROR: While executing gem ... (Errno::EROFS) Read-only file system @ dir_s_mkdir - /opt/rh/rh-ruby22/root/usr/local/share/gems
または bundle update または bundle install コマンドを実行して、ユーザーが外部ソースから gem を更新またはインストールしようとすると、同じ問題が発生します。 - Python Package Index (PyPI) を使用して読み取り専用 NFS に Python パッケージをインストールすると、この pip コマンドが失敗し、以下のようなエラーメッセージが表示されます。
Read-only file system: '/opt/rh/rh-python34/root/usr/lib/python3.4/site-packages/ipython-3.1.0.dist-info'
- pear コマンドを使用した読み取り専用 NFS への PEAR (PHP Extension and Application Repository) からパッケージのインストールに失敗し、エラーメッセージが表示されます。
Cannot install, php_dir for channel "pear.php.net" is not writeable by the current user
これは想定される動作です。 -
httpd
コンポーネント - Apache の言語モジュールは、Red Hat Software Collections バージョンの Apache httpd でのみサポートされ、Red Hat Enterprise Linux システムバージョンの httpd には対応していません。たとえば、rh-python35 コレクションの
mod_wsgi
モジュールは httpd24 コレクションでのみ使用できます。 - すべてのコンポーネント
- Red Hat Software Collections 2.0 以降、設定ファイル、変数データ、および各 Collections のランタイムデータは、以前のバージョンの Red Hat Software Collections とは異なるディレクトリーに保存されます。
-
coreutils
、util-linux
、screen
コンポーネント - su、login、screen などの一部のユーティリティーは、全ケースで環境設定がエクスポートされるわけではなく、予期せぬ結果になる可能性があります。そのため、su の代わりに sudo を使用し、
/etc/sudoers
ファイルにenv_keep
環境変数を設定することを推奨します。下の順序でコマンドを実行できます。例を以下に示します。su -l postgres -c "scl enable rh-postgresql94 psql"
以下の代わりとなります。scl enable rh-postgresql94 bash su -l postgres -c psql
screen、login などのツールを使用する場合は、以下のコマンドを使用して環境設定を保存できます。source /opt/rh/<collection_name>/enable
-
python
コンポーネント - ユーザーが python27 および rh-python* Software Collections から複数の scldevel パッケージをインストールしようとすると、トランザクションチェックのエラーメッセージが返されます。パッケージ (
%scl_python
、%scl_prefix_python
) が提供するマクロファイルのセットをユーザーが 1 つだけインストールできるため、これは想定される動作です。 -
php
コンポーネント ) - ユーザーが rh-php* Software Collections から複数の scldevel パッケージをインストールしようとすると、トランザクションチェックのエラーメッセージが返されます。パッケージ (
%scl_php
、%scl_prefix_php
) が提供するマクロファイルのセットをユーザーが 1 つだけインストールできるため、これは想定される動作です。 -
ruby
コンポーネント - ユーザーが rh-ruby* Software Collections から複数の scldevel パッケージをインストールしようとすると、トランザクションチェックのエラーメッセージが返されます。パッケージ (
%scl_ruby
、%scl_prefix_ruby
) が提供するマクロファイルのセットをユーザーが 1 つだけインストールできるため、これは想定される動作です。 -
perl
コンポーネント - ユーザーが rh-perl* Software Collections から複数の scldevel パッケージをインストールしようとすると、トランザクションチェックのエラーメッセージが返されます。パッケージ (
%scl_perl
、%scl_prefix_perl
) が提供するマクロファイルのセットをユーザーが 1 つだけインストールできるため、これは想定される動作です。 -
nginx
コンポーネント - ユーザーが rh-nginx* Software Collections から複数の scldevel パッケージをインストールしようとすると、トランザクションチェックのエラーメッセージが返されます。パッケージ (
%scl_nginx
、%scl_prefix_nginx
) が提供するマクロファイルのセットをユーザーが 1 つだけインストールできるため、これは想定される動作です。