RHEL7.6でカスタムyumリポジトリのカスタムパッケージグループを設定できません。
まず、カスタムyumリポジトリを作成するために実行した手順は次のとおりです。
すべてのRPMを含むディレクトリを作成し、関連項目をコピーします。
$ mkdir MyRepo $ cp /path/to/some/*.rpm MyRepo/
リポジトリのメタデータを生成します。
$ cd MyRepo $ createrepo .
これでカスタムリポジトリが作成されたので、次のようにパッケージグループを作成しましょう。
- 次の場所に
comps.xml
ファイルを作成しますMyRepo/repodata/
。
次の形式のメタデータが含まれています。$ touch repodata/comps.xml
<comps> <!-- <meta> --> <!-- Meta information will go here eventually... --> <!-- </meta> --> <group> <id>myrepo</id> <name>MyRepo</name> <default>true</default> <description>My custom repository</description> <uservisible>true</uservisible> <packagelist> <packagereq type="mandatory">octave</packagereq> <packagereq type="mandatory">octave-devel</packagereq> etc... </packagelist> </group> </comps>
- 次に、グループデータを説明するために以前に作成したメタデータを更新します。
createrepo -g repodata/comps.xml .
myrepo.repo
最後にディレクトリを作成し、/etc/yum.repos.d/
次の内容をここに入れます。[myrepo] name=MyRepo baseurl=file:///path/to/MyRepo enabled=1
その仕事が終わったら、yum clean all
文句なしに働きました。しかし、テストに行ったとき、yum --noplugins groupinfo MyRepo
状況はひどく間違っていました。次のエラーが発生します。
There is no installed groups file.
Maybe run: yum groups mark convert (see man yum)
Failed to add groups file for repository: MyRepo - comps file is empty/damaged
Warning: group/environment MyRepo does not exist.
私のcompsファイルが空ではなく、対応するハッシュ値が同じですrepodata/repomd.xml
。これをデバッグする方法は非常に混乱しています。私は何が間違っていましたか?パッケージ名を誤って入力すると、そのような大きな間違いが発生する可能性がありますか?
助けてくれてありがとう。
答え1
「ここにインストールされているグループファイルはありません。」 「同じ場所にグループファイルを追加できません。base-compsファイルが空か破損しています」と同じメッセージが表示されます。
公式リポジトリから基本インストールを実行しています。
キャッシュの問題であることがわかりました。
sudo yum rm -rf /var/cache/yum
すべてが消去されました