第6章 ソフトウェア管理
6.1. YUM スタックへの主な変更
6.1.1. YUM/DNF を使用したパッケージ管理
Red Hat Enterprise Linux 8 へのソフトウェアのインストールは、DNF テクノロジーをベースとした YUM ツールにより行われます (YUM v4)。以前のメジャーバージョンの RHEL との一貫性を保つために、yum
の用語の使用が意図的に準拠しています。ただし、yum
の代わりに dnf
を呼び出すと、yum
は互換性のために dnf
のエイリアスであるため、コマンドが期待どおりに動作します。
詳細は、ユーザー空間コンポーネントのインストール、管理、および削除 を参照してください。
6.1.2. YUM v3 と比較した YUM v4 の利点
YUM v4 には、RHEL 7 で使用されていた、以前のバージョンの YUM v3 に対して、以下の利点が追加されました。
- パフォーマンスの向上
- モジューラーコンテンツへの対応
- ツーリングと統合するために適切に設計され、安定した API
新しい YUM v4 ツールと、以前のバージョンである RHEL 7 の YUM v3 ツールの相違点の詳細は、Changes in DNF CLI compared to YUM を参照してください。
6.1.3. YUM v4 を使用する方法
ソフトウェアのインストール
コマンドラインから使用したり、設定ファイルを編集または作成する場合、YUM v4 は YUM v3 と互換性があります。
ソフトウェアをインストールするには、RHEL 7 と同じ yum
コマンドとオプションを使用できます。
ソフトウェアパッケージのインストール に関する詳細情報を参照してください。
プラグインの可用性
以前の YUM v3 プラグインは、新しいバージョンの YUM v4 と互換性がありません。選択した yum プラグインおよびユーティリティーは、新しい DNF バックエンドに移植されており、RHEL 7 と同じ名前でインストールできます。このパッケージは互換性を持ったシンボリックリンクを提供するため、バイナリー、設定ファイル、ディレクトリーは通常の場所で確認できます。
プラグインが含まれなくなったり、置き換えがユーザービリティーを満たさなくなった場合は、カスタマーポータルでサポートケースを作成および管理する に記載されているように、Red Hat サポートにご連絡いただき、機能強化を要求してください。
詳細は Plugin Interface を参照してください。
API の可用性
YUM v3 が提供する以前の Python API は利用できなくなりました。YUM v4 (DNF Python API) が提供する安定し、完全に対応する新しい API に、使用しているプラグインおよびスクリプトを移行することが推奨されます。新しい DNF Python API のドキュメントは、DNF API Reference により提供されます。
Libdnf および Hawkey API (C および Python の両方) は不安定であると見なされているため、RHEL 8 のライフサイクル期間中に変更する可能性があります。
6.1.4. YUM 設定ファイルオプションの可用性
RHEL 7 と RHEL 8 の間で、/etc/yum.conf
ファイルおよび /etc/yum.repos.d/*.repo
ファイルの設定ファイルオプションに追加された変更点を簡単に紹介します。
RHEL 7 オプション | RHEL 8 ステータス |
---|---|
alwaysprompt | 削除 |
assumeno | 利用可能 |
assumeyes | 利用可能 |
autocheck_running_kernel | 利用可能 |
autosavets | 削除 |
bandwidth | 利用可能 |
bugtracker_url | 利用可能 |
cachedir | 利用可能 |
check_config_file_age | 利用可能 |
clean_requirements_on_remove | 利用可能 |
color | 利用可能 |
color_list_available_downgrade | 利用可能 |
color_list_available_install | 利用可能 |
color_list_available_reinstall | 利用可能 |
color_list_available_running_kernel | 削除 |
color_list_available_upgrade | 利用可能 |
color_list_installed_extra | 利用可能 |
color_list_installed_newer | 利用可能 |
color_list_installed_older | 利用可能 |
color_list_installed_reinstall | 利用可能 |
color_list_installed_running_kernel | 削除 |
color_search_match | 利用可能 |
color_update_installed | 利用可能 |
color_update_local | 利用可能 |
color_update_remote | 利用可能 |
commands | 削除 |
config_file_path | 利用可能 |
debuglevel | 利用可能 |
deltarpm | 利用可能 |
deltarpm_metadata_percentage | 削除 |
deltarpm_percentage | 利用可能 |
depsolve_loop_limit | 削除 |
disable_excludes | 利用可能 |
diskspacecheck | 利用可能 |
distroverpkg | 削除 |
enable_group_conditionals | 削除 |
errorlevel | 利用可能 |
exactarchlist | 削除 |
exclude | 利用可能 |
exit_on_lock | 利用可能 |
fssnap_abort_on_errors | 削除 |
fssnap_automatic_keep | 削除 |
fssnap_automatic_post | 削除 |
fssnap_automatic_pre | 削除 |
fssnap_devices | 削除 |
fssnap_percentage | 削除 |
ftp_disable_epsv | 削除 |
gpgcheck | 利用可能 |
group_command | 削除 |
group_package_types | 利用可能 |
groupremove_leaf_only | 削除 |
history_list_view | 利用可能 |
history_record | 利用可能 |
history_record_packages | 利用可能 |
http_caching | 削除 |
include | 削除 |
installonly_limit | 利用可能 |
installonlypkgs | 利用可能 |
installrootkeep | 削除 |
ip_resolve | 利用可能 |
keepalive | 削除 |
keepcache | 利用可能 |
kernelpkgnames | 削除 |
loadts_ignoremissing | 削除 |
loadts_ignorenewrpm | 削除 |
loadts_ignorerpm | 削除 |
localpkg_gpgcheck | 利用可能 |
logfile | 削除 |
max_connections | 削除 |
mddownloadpolicy | 削除 |
mdpolicy | 削除 |
metadata_expire | 利用可能 |
metadata_expire_filter | 削除 |
minrate | 利用可能 |
mirrorlist_expire | 削除 |
multilib_policy | 利用可能 |
obsoletes | 利用可能 |
override_install_langs | 削除 |
overwrite_groups | 削除 |
password | 利用可能 |
payload_gpgcheck | 削除 |
persistdir | 利用可能 |
pluginconfpath | 利用可能 |
pluginpath | 利用可能 |
plugins | 利用可能 |
protected_multilib | 削除 |
protected_packages | 利用可能 |
proxy | 利用可能 |
proxy_password | 利用可能 |
proxy_username | 利用可能 |
query_install_excludes | 削除 |
recent | 利用可能 |
recheck_installed_requires | 削除 |
remove_leaf_only | 削除 |
repo_gpgcheck | 利用可能 |
repopkgsremove_leaf_only | 削除 |
reposdir | 利用可能 |
reset_nice | 利用可能 |
retries | 利用可能 |
rpmverbosity | 利用可能 |
shell_exit_status | 削除 |
showdupesfromrepos | 利用可能 |
skip_broken | 利用可能 |
skip_missing_names_on_install | 削除 |
skip_missing_names_on_update | 削除 |
ssl_check_cert_permissions | 削除 |
sslcacert | 利用可能 |
sslclientcert | 利用可能 |
sslclientkey | 利用可能 |
sslverify | 利用可能 |
syslog_device | 削除 |
syslog_facility | 削除 |
syslog_ident | 削除 |
throttle | 利用可能 |
timeout | 利用可能 |
tolerant | 削除 |
tsflags | 利用可能 |
ui_repoid_vars | 削除 |
upgrade_group_objects_upgrade | 利用可能 |
upgrade_requirements_on_install | 削除 |
usercache | 削除 |
username | 利用可能 |
usr_w_check | 削除 |
RHEL 7 オプション | RHEL 8 ステータス |
---|---|
async | 削除 |
bandwidth | 利用可能 |
baseurl | 利用可能 |
compare_providers_priority | 削除 |
cost | 利用可能 |
deltarpm_metadata_percentage | 削除 |
deltarpm_percentage | 利用可能 |
enabled | 利用可能 |
enablegroups | 利用可能 |
exclude | 利用可能 |
failovermethod | 削除 |
ftp_disable_epsv | 削除 |
gpgcakey | 削除 |
gpgcheck | 利用可能 |
gpgkey | 利用可能 |
http_caching | 削除 |
includepkgs | 利用可能 |
ip_resolve | 利用可能 |
keepalive | 削除 |
metadata_expire | 利用可能 |
metadata_expire_filter | 削除 |
metalink | 利用可能 |
mirrorlist | 利用可能 |
mirrorlist_expire | 削除 |
name | 利用可能 |
password | 利用可能 |
proxy | 利用可能 |
proxy_password | 利用可能 |
proxy_username | 利用可能 |
repo_gpgcheck | 利用可能 |
repositoryid | 削除 |
retries | 利用可能 |
skip_if_unavailable | 利用可能 |
ssl_check_cert_permissions | 削除 |
sslcacert | 利用可能 |
sslclientcert | 利用可能 |
sslclientkey | 利用可能 |
sslverify | 利用可能 |
throttle | 利用可能 |
timeout | 利用可能 |
ui_repoid_vars | 削除 |
username | 利用可能 |
6.1.5. YUM v4 機能の動作が異なる
YUM v3 機能の一部の挙動が、YUM v4 と異なる可能性があります。この変更がワークフローに影響を及ぼす場合は、カスタマーポータルでサポートケースを作成および管理する に従って、Red Hat サポートケースを作成してください。
6.1.5.1. yum list がエントリーを重複して表示
yum list
コマンドを使用してパッケージのリストを表示すると、エントリーが重複して表示される可能性があります。エントリーは、リポジトリー単位で表示されるため、バッケージ名とバージョンが同じものが複数のリポジトリーに存在すると、そのリポジトリーがすべて表示されます。
これは意図的であり、必要に応じて、このようなパッケージを区別できます。
たとえば、repo1 および repo2 で package-1.2 が利用可能な場合、YUM v4 は両方のインスタンスを出力します。
[…] package-1.2 repo1 package-1.2 repo2 […]
一方、以前のバージョンの YUM v3 コマンドではこのような重複は除外されるため、インスタンスは 1 つしか表示されません。
[…] package-1.2 repo1 […]
6.1.6. トランザクション履歴のログファイルの変更
RHEL 7 と RHEL 8 の間でトランザクション履歴ログファイルに追加された変更点を簡単に紹介します。
RHEL 7 では、/var/log/yum.log
ファイルには以下が保存されます。
- ソフトウェアパッケージのインストール、更新、および削除のレジストリー
- yum および PackageKit からのトランザクション
RHEL 8 では、/var/log/yum.log
ファイルに直接相当するものはありません。PackageKit、microdnf などのトランザクションに関する情報を表示するには、yum history
コマンドを使用します。
または、/var/log/dnf.rpm.log
ファイルを検索することもできますが、このログファイルに PackageKit および microdnf からのトランザクションが含まれず、保存された情報を定期的に削除するログローテーションがあります。
6.1.7. deltarpm 機能がサポート対象外に
RHEL 8 では、delta rpms
の使用をサポートしなくなりました。delta rpms
を利用するには、利用できなくなった deltarpm
パッケージをインストールする必要があります。deltarpm
の代わりである drpm
には、同じ機能はありません。したがって、RHEL 8 のコンテンツは deltarpm
形式で配信されません。この機能は、今後の RHEL リリースで完全に削除されることに注意してください。