CentOSにYUMレポジトリを構築
まず、createrepoというパッケージをインストールします。
$ sudo yum install -y createrepo
自作のRPMをHTTPの公開ディレクトリに移動させます。RPMの自作方法はこちらなどをご参照ください。
RPMを移動させたら、createrepoコマンドで、レポジトリのメタデータを作成します。
$ sudo createrepo /usr/local/apache2/htdocs/repo/x86_64
これでYUMレポジトリの構築は完了です。
YUMクライアント設定
YUMクライアントサーバーにレポジトリの登録を行います。
$ sudo vi /etc/yum.repos.d/original.repo
[original]
name=original Repository
baseurl=http://******.net/repos/x86_64/
enabled=1
gpgcheck=0
これで独自YUMが使えるようになります。クライアントサーバーで最近YUMを使っていたら、念のためyum clean allしてキャッシュをクリアしておいたほうが良いです。
CentOS6でYUMレポジトリを構築して、CentOS5がクライアントの時の注意点
CentOS6で何のオプションもつけずにcreaterepoすると、CentOS5がYUMクライアントの場合、
Error: failure: repodata/primary.xml.gz from original: [Errno 256] No more mirrors to try.
のようなエラーになってYUMが実行できません。これは、CentOS6のcreaterepoの暗号化方式と、CentOS5の暗号化方式が違うためです。そのため、この場合は、YUMサーバーでcreaterepoする時に以下のように実行する必要があります。
$ sudo createrepo -v -s sha1 /usr/local/apache2/htdocs/repos/x86_64/
それでは、快適なYUMライフを!