yum groupinstall "<package group name>" が RHEL 7 で失敗し、エラーメッセージ「There is no installed groups file」を表示する
Environment
- Red Hat Enterprise Linux 7.0
- yum
Issue
-
yum groupinstall "Office Suite and Productivity"
が Red Hat Enterprise Linux 7 で失敗し、エラーメッセージ「There is no installed groups file
」を表示します。 -
yum groupinstall "Office Suite and Productivity"
Loaded plugins: langpacks, product-id, subscription-manager
There is no installed groups file.
Maybe run: yum groups mark convert (see man yum)
Warning: Group office-suite does not have any packages to install.
Maybe run: yum groups mark install (see man yum)
No packages in any requested group available to install or update
yum groupinstall "Graphical Administration Tools"
Loaded plugins: langpacks, product-id, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
There is no installed groups file.
Maybe run: yum groups mark convert (see man yum)
Warning: Group graphical-admin-tools does not have any packages to install.
Group graphical-admin-tools does have 1 conditional packages, which may get installed.
Maybe run: yum groups mark install (see man yum)
No packages in any requested group available to install or update
yum groupinstall "System Administration Tools"
Loaded plugins: langpacks, product-id, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
There is no installed groups file.
Maybe run: yum groups mark convert (see man yum)
Warning: Group system-admin-tools does not have any packages to install.
Maybe run: yum groups mark install (see man yum)
No packages in any requested group available to install or update
- yum group install "kde-desktop" が失敗し、エラーメッセージ「No packages in any requested group available to install or update」を表示します。
Resolution
-
yum は Red Hat Enterprise Linux 7 で変更されました。パッケージグループ「Office Suite and Productivity」には、デフォルトではインストールされないオプションパッケージのみがあります。したがって、オプションパッケージもインストールするオプションを渡す必要があります。
-
上記のパッケージグループをインストールするには、以下のコマンドを実行してください。
# yum groupinstall "Office Suite and Productivity" --setopt=group_package_types=mandatory,default,optional
- yum コマンドラインで yum 設定パラメーターを提供する方法の詳細は、「How to provide yum configuration parameters on yum command-line?」 を参照してください 。
Root Cause
- yum は Red Hat Enterprise Linux 7 で変更されました。パッケージグループ「Office Suite and Productivity」には、デフォルトではインストールされないオプションパッケージのみがあります。したがって、オプションパッケージもインストールするオプションを渡す必要があります。
-
すべての必須パッケージがシステムにインストールされている場合は、現在の動作は設計上は正常です。 以前はグループの存在がそれぞれのパッケージの存在によって定義されていましたが、RHEL-7 では、オブジェクト (追加パッケージのようなもの) として処理されるパッケージグループという新しい概念が導入されました。
-
以下の 2 つのシナリオで、わかりやすく説明することができます。
A) 「開発」グループの一部であるパッケージがすべてインストールされている場合で (yum group install など)、開発グループの将来の更新も使用する必要があることから (パッケージの追加など)、グループをインストール済みとしてマークする必要があります (yum group install を使用してパッケージをインストールした場合はデフォルト)。B) 同じパッケージのセットを誤ってインストールしたが、(直接インストールしなかったため) 開発グループに特に関心がない可能性があり、したがって、最新の状態に維持したくない場合 (個々のパッケージの更新を除く)。この場合、グループはインストール済みとしてマークされるべきではありません。
状況は B) だが、A) へ切り替えたい場合。そのためには、
yum groups mark install "Development Tools" を実行し、
そのグループが存在する必要があることを yum に知らせなければなりません。
別の方法として、システムのプロビジョニング方法を調整して、個々のパッケージ (シナリオ B) をインストールする代わりに、パッケージグループ (シナリオ A) をインストールすることもできます。
また、すべての必須パッケージがすでに存在する場合に、「yum group install Group」の後にグループが自動的にインストール済みとマークされるように、RFE の実装を検討することもできます。
Diagnostic Steps
- すべてのパッケージがシステムのプロビジョニング中に既に存在するか、手動でインストールされている場合は、グループがまだインストール済みとしてリストされていないことがわかります。これは想定内です。
# yum grouplist
Loaded plugins: product-id, search-disabled-repos, subscription-manager
There is no installed groups file.
Maybe run: yum groups mark convert (see man yum)
Available Environment Groups:
Minimal Install
Infrastructure Server
File and Print Server
Basic Web Server
Virtualization Host
Server with GUI
Available Groups:
Compatibility Libraries
Console Internet Tools
Development Tools
Graphical Administration Tools
Legacy UNIX Compatibility
Scientific Support
Security Tools
Smart Card Support
System Administration Tools
System Management
Done
- しかし、詳細な出力では、グループのすべてのパッケージがインストールされていることがわかります (パッケージ名の前の追加スペースは、パッケージがインストールされているが、グループインストールの一部としてインストールされたのではないことを示しています。man yum を参照してください)。
# yum group info 'Development Tools'
Loaded plugins: product-id, search-disabled-repos, subscription-manager
There is no installed groups file.
Maybe run: yum groups mark convert (see man yum)
Group: Development Tools
Group-Id: development
Description: A basic development environment.
Mandatory Packages:
autoconf
automake
binutils
bison
flex
gcc
gcc-c++
gettext
libtool
make
patch
pkgconfig
redhat-rpm-config
rpm-build
rpm-sign
Default Packages:
byacc
cscope
ctags
diffstat
doxygen
elfutils
gcc-gfortran
git
indent
intltool
patchutils
rcs
subversion
swig
systemtap
Optional Packages:
ElectricFence
ant
babel
bzr
chrpath
cmake
compat-gcc-44
compat-gcc-44-c++
compat-gcc-44-g77
cvs
dejagnu
expect
gcc-gnat
gcc-objc
gcc-objc++
imake
javapackages-tools
ksc
libstdc++-docs
mercurial
mod_dav_svn
nasm
perltidy
python-docs
rpmdevtools
rpmlint
systemtap-sdt-devel
systemtap-server
これでようやく、グループを手動でインストール済みとしてマークできるようになりました。
# yum groups mark install "Development Tools"
# yum group list
Loaded plugins: product-id, search-disabled-repos, subscription-manager
Available Environment Groups:
Minimal Install
Infrastructure Server
File and Print Server
Basic Web Server
Virtualization Host
Server with GUI
Installed Groups:
Development Tools
Available Groups:
Compatibility Libraries
Console Internet Tools
Graphical Administration Tools
Legacy UNIX Compatibility
Scientific Support
Security Tools
Smart Card Support
System Administration Tools
System Management
Done
- インストールされたパッケージの前には、追加スペースが 1 つあります (ユーザーフレンドリーな方法ではありません)
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.
Comments