自前yumリポジトリでのグループインストール設定
前回、yumリポジトリ構築について書いたが、グループインストールについて触れていなかったので今回は自前yumリポジトリでのグループインストール設定について書く。
yumリポジトリサーバ側でも自前リポジトリを指定する。
yumグループを作る際に yum-groups-manager というツールで既存パッケージを指定するが、yumリポジトリサーバ側でもyumコマンドでRPMが取得できないといけないのでまずはそれを設定する。
$ vi /etc/yum.repos.d/local.repo
[local] name=CentOS-$releasever - $basearch - Local Repository baseurl=http://192.168.1.12/centos/$releasever/$basearch/ enabled=1 gpgcheck=0
グループ定義XMLを用意する
グループ定義XMLを用意するために yum-groups-manager というツールを使う。
使い方は下記のようにする。
(新規の場合) $ yum-groups-manager --id=local-mysql --name='Local MySQL packages' --description='The package in this group are MySQL packages needed to DB servers.' --save=/var/www/html/centos/5/i386/groups.xml MySQL-client-community
すると下記のようなXMLができあがる。
$ cat /var/www/html/centos/5/i386/repodata/groups.xml
local-mysql false true 1024 Local MySQL packages The package in this group are MySQL packages needed to DB servers. MySQL-client-community
せっかくなので MySQL-server-community も同じグループに含める。
まずはオフィシャルからダウンロードする。
$ wget http://dev.mysql.com/get/Downloads/MySQL-5.1/MySQL-server-community-5.1.51-1.rhel5.i386.rpm/from/http://ftp.iij.ad.jp/pub/db/mysql/
上記で既にグループ定義XMLは用意してあるのでそのXMLに追加してみる。コマンドは以下のようになる。
$ yum-groups-manager --id=local-mysql --load=/var/www/html/centos/5/i386/repodata/groups.xml --save=/var/www/html/centos/5/i386/repodata/groups.xml MySQL-server-community
--id もしくは --name に既にあるものを指定すれば追加することができる。念のため確認。
$ cat /var/www/html/centos/5/i386/repodata/groups.xml
local-mysql false true 1024 Local MySQL packages The package in this group are MySQL packages needed to DB servers. MySQL-client-community MySQL-server-community
最後にグループ定義XMLを指定してyumリポジトリを更新する。
$ createrepo -v -g /var/www/html/centos/5/i386/repodata/groups.xml /var/www/html/centos/5/i386/
yumクライアント側でグループインストールしてみる。
では実際にグループインストールでMySQL関連のRPMを入れてみる。
$ yum --disablerepo=* --enablerepo=local groupinstall mysql-local
===================================================================================== Package Arch Version Repository Size ===================================================================================== Installing: MySQL-client-community i386 5.1.51-1.rhel5 local 7.3 M MySQL-server-community i386 5.1.51-1.rhel5 local 20 M
無事にインストールできている。