yumのリポジトリ登録・優先度設定方法

いろんなやり方があるのはそうなんだけど、パッと調べて出てくる方法はいろいろいけてない点がある。セットアップ時に一回やればいいので問題はないのかもしれないが、スクリプト化しづらかったりすると困るし。

ありがちないけてない点

  • gpgファイルやらなんやらwgetする回数が多い
  • /etc/yum.repo.d 以下のファイルを編集しないといけない

今回の方法の訴求点

  • wgetするのはリポジトリあたり1回
  • 設定ファイルを直接編集しない

事前準備

  • yum-utilsのインストール
    # yum install yum-utils
  • yumのプラグインをインストール
    # yum install yum-plugin-priorities
  • ディストリのリポジトリの優先度設定(例はCentOSの場合)
    # yum-config-manager --setopt="base.priority=1" --save base
    # yum-config-manager --setopt="updates.priority=1" --save updates
    # yum-config-manager --setopt="extras.priority=1"--save extras

リポジトリの登録手順

  • リポジトリを登録するrpmをwgetしてインストール
    # wget $rpmurl -O $rpmfile
    # rpm -ivh $rpmfile
  • リポジトリの有効化及び優先度設定
    # yum-config-manager –setopt=”$reponame.priority=10″ –save $reponame

リポジトリのリスト(CentOS 6系、x86_64用)

  • RPMforge
    • rpmurl=http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
    • rpmfile=rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
    • reponame=rpmforge
  • Remi
    • rpmurl=http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
    • rpmfile=remi-release-6.rpm
    • reponame=remi
  • EPEL
    • rpmurl=http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
    • rpmfile=epel-release-6-8.noarch.rpm
    • reponame=epel

ちょっと説明

  • RPMforge, Remi, EPELあたりを入れておけばだいたいカバーされる?
  • 特にRemiはパッケージのアップデートが頻繁なのでpriorityつけておかないと面倒な印象
  • 優先度は整数で、小さいほど優先度が高い
  • この方法を使えば完全にスクリプト化するのも簡単

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です