CentOS 5.2 で yum の対象リポジトリに RPMforge を追加するには

October 9, 2008

RPMforge (http://rpmrepo.org/RPMforge) はサードパーティ製のRPMパッケージ群のリポジトリである。lighttpd を試したかったので、yum で RPMforge を扱えるようにしたときのメモ。

http://wiki.centos.org/AdditionalResources/Repositories/RPMForge を見ると手順が書かれている。

Priorities のインストール

これをインストールするのはリポジトリに優先度を付加して通常の update / upgrade 時には RPMforge などを含まないようにしておくためである。

# yum install yum-priorities

cat /etc/yum/pluginconf.d/priorities.conf で確認するとデフォルトで次のようになっているはず、なっていなかったらこのとおりに修正する。

[main]
enabled=1

RPMforge のパッケージをインストール

以下はテンポラリなディレクトリで行う。

パッケージをダウンロード

アーキテクチャに合わせて i386 もしくは x86_64 のパッケージをダウンロードする。

$ wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm

GPG key をインポート

# rpm –import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt

パッケージの認証

# rpm -K rpmforge-release-0.3.6-1.el5.rf.*.rpm

パッケージをインストール

# rpm -i rpmforge-release-0.3.6-1.el5.rf.*.rpm

リポジトリファイルに優先度を付加

/etc/yum.repos.d/*.repo にマッチするファイルを開いて各セクションに priority=Nを定義していく。

CentOS-Base.repo

# CentOS-Base.repo
#
# This file uses a new mirrorlist system developed by Lance Davis for CentOS.
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client. You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the
# remarked out baseurl= line instead.
#
#
[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
priority=1
#released updates
[updates]
name=CentOS-$releasever - Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
priority=1
#packages used/produced in the build but not released
[addons]
name=CentOS-$releasever - Addons
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=addons
#baseurl=http://mirror.centos.org/centos/$releasever/addons/$basearch/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
priority=1
#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
priority=1
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
#baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
priority=2

rpmforge.repo

# Name: RPMforge RPM Repository for Red Hat Enterprise 5 - dag
# URL: http://rpmforge.net/
[rpmforge]
name = Red Hat Enterprise $releasever - RPMforge.net - dag
#baseurl = http://apt.sw.be/redhat/el5/en/$basearch/dag
mirrorlist = http://apt.sw.be/redhat/el5/en/mirrors-rpmforge
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge
enabled = 0
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 1
priority=10

RPMforge を yum の対象にするには

# yum –enablerepo=rpmforge search lighttpd

のように enablerepo を与える。

tilfin freelance software engineer