web-dev-qa-db-ja.com

カスタムキックスタートISOプロセス-パッケージからRPMへのマッピング

まず、キックスタートは初めてですので、間違った用語を使用した場合は、事前にお詫び申し上げます。

私が達成しようとしていること: CentOSと私が書いたWebベースのアプリケーションをインストールするための顧客ISOを作成しようとしています。 「アプライアンス」タイプのインストールを作成して、アプリケーションを実行するVMまたはベアメタルサーバーのみを簡単にデプロイできるようにします。

RHELに基づいて別の会社が作成したISOの例があり、彼らが行ったことをフォローして、ニーズに合わせてカスタマイズしようとしています。

質問:サンプルisoのks.cfgファイルを見て、インストールするパッケージを定義しています。これは、最終的にはISOのルートにあるディレクトリからのRPMのリストであると思います。以下は、ks.cfgファイルからの抜粋です。

#Package install information
%packages
@ base
@ core
@ acme-base
@ acme-platform
@ acme-application

Isoのディレクトリを見ると、@ acme-platformによって/acme/acmeplatform/RPMS/*.rpmがインストールされると思います。

私の質問は、このマッピングが@ acme-platformから実際のRPMが保存されているISO上のディレクトリにどのように定義されているかです。

編集:最初の答えを読んだ後、私は質問を明確にしたいと思いました:私は本当にRPMの場所をks.cfgファイルで参照されているグループにマップするファイルを探しています。グループを構成する実際のパッケージは/repodata/comps.xmlで定義されていることがわかります

3
Aossey

リストされているパッケージは、実際にはyumパッケージグループです。グループは、個々のパッケージを手動でリストする必要がない(または、特定の効果に対してどのパッケージが推奨されるかを必ずしも知っている)必要がないことに慣れています。たとえば、RHEL 6(およびCentOS 6だと思います)では、テキストのみの場合、yum groupinstall Desktopを実行できます。これにより、「デスクトップ」というグループを満たすために必要なすべてのパッケージがインストールされ、最終的にGNOMEがインストールされます。デスクトップおよびその他のアプリケーションRedHatは、あなたが役に立つと思った。これは、基本的に「デスクトップが欲しい」と言うのと同じくらい簡単なプロセスにするためです。

coreおよびbaseグループはRHEL/CentOSベースの一部であり、acme-*グループはおそらく問題のアプライアンス用です。彼らはおそらくrpmを同じディレクトリに置きます

マウントすることから始めます ループバックにマウントされたISOを調べるyumリポジトリを作成します 次に、どの個々のパッケージが各グループに対応するかを確認するために必要なyum groupinfoコマンドを発行します。たとえば、baseグループのパッケージを表示するには、yum groupinfo baseと入力して、栄光を見てください。

それが与えるパッケージ名は、DVDのどこかにあるRPMの名前になります(覚えていませんが、「RPMS」ディレクトリがあると思います)。パッケージ名は、RPMのファイル名の最初の部分を形成します。

たとえば、btparserというパッケージが表示された場合、ファイル名はbtparser-0.17-2.el6.x86_64.rpmという名前になります(ただし、find /path/to/mountedISO -name 'btparser*を発行して検索します)。

それはあなたを正しい軌道に乗せるはずです。

1
Bratchley

/etc/yum.repos.d/内の/etc/yum.confファイルと.repoファイルは、使用するリポジトリを決定します。これらのリポジトリには、RPMの場所を(「場所」フィールドを介して)指定するファイルrepodata /primary.xmlがあります。

ソフトウェアをメインCDリポジトリに統合したくない場合があります。 ISOの他の場所で作成し、creatrepoを使用します。キックスタート構成では、「repo」コマンドを追加して、「repo --name = acme --baseurl = file:// mnt/cdrom/local/repos/acme」などを使用してこのリポジトリを追加できます。

0
Mark Wagner