国内 Scientific Linux 6 サーバーのためのYum設定

Scientific Linux のパッケージ・アップデート・ツールであるyumはデフォルトのままでも十分に動くが、これをもう少し機能向上させていく。

まず、そのままでは公式サイトを見に行ってしまって遅いので、国内においているマシンであるならば国内ミラー・サイトを使おう。公式ミラー・リストに載っている国内サイトは北陸先端科学技術大学院大学 / KDDI研究所 / 理化学研究所 / WIDEプロジェクト / 山形大学 の5つだが、これらはmirrorlistファイルにすべて載っているのでそれを使うことにする。また、デフォルトでは6.1のリポジトリだけを見に行って6.2へは自動アップグレードされないようになっていたが、6の部分を6xに変更することで自動で最新にアップグレードできるようにした。

[text title=”/etc/yum.repos.d/sl.repo” highlight=”3,4,5,6,8,12,13,14,15,17″ autolinks=”0″][sl]
name=Scientific Linux $releasever – $basearch
#baseurl=http://ftp.scientificlinux.org/linux/scientific/$releasever/$basearch/os/

http://ftp1.scientificlinux.org/linux/scientific/$releasever/$basearch/os/

http://ftp2.scientificlinux.org/linux/scientific/$releasever/$basearch/os/

ftp://ftp.scientificlinux.org/linux/scientific/$releasever/$basearch/os/

#mirrorlist=http://ftp.scientificlinux.org/linux/scientific/mirrorlist/sl-base-6.txt
mirrorlist=http://ftp.scientificlinux.org/linux/scientific/mirrorlist/sl-base-6x.txt
……
[sl-security]
name=Scientific Linux $releasever – $basearch – security updates
#baseurl=http://ftp.scientificlinux.org/linux/scientific/$releasever/$basearch/updates/security/

http://ftp1.scientificlinux.org/linux/scientific/$releasever/$basearch/updates/security/

http://ftp2.scientificlinux.org/linux/scientific/$releasever/$basearch/updates/security/

ftp://ftp.scientificlinux.org/linux/scientific/$releasever/$basearch/updates/security/

#mirrorlist=http://ftp.scientificlinux.org/linux/scientific/mirrorlist/sl-security-6.txt
mirrorlist=http://ftp.scientificlinux.org/linux/scientific/mirrorlist/sl-security-6x.txt[/text]

Scientific Linux 6 にはRepoforge (RPMforge) / ATrpms / EPELをリポジトリに追加するRPMがあるので、それもインストールしてミラーを変更しておこう。

Repoforgeの国内ミラーはIIJ / KDDI研究所 / 理化学研究所にある。ただし、KDDI研究所は2011年5月14日を最後に同期が止まっているので、以下ではコメントアウトしている。

[text title=”/etc/yum.repos.d/rpmforge.repo” firstline=”3″ highlight=”5,6,7″ autolinks=”0″][rpmforge]
name = RHEL $releasever – RPMforge.net – dag
#baseurl = http://apt.sw.be/redhat/el6/en/$basearch/rpmforge
#mirrorlist = http://apt.sw.be/redhat/el6/en/mirrors-rpmforge
mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge[/text]

[text title=”/etc/yum.repos.d/mirrors-rpmforge” firstline=”11″ highlight=”12,13,14″ autolinks=”0″]
 http://www.mirrorservice.org/sites/apt.sw.be/redhat/el6/en/$ARCH/rpmforge
 http://ftp.iij.ad.jp/pub/linux/dag/redhat/el6/en/$ARCH/rpmforge
 http://ftp.riken.jp/Linux/dag/redhat/el6/en/$ARCH/rpmforge
 #http://ftp.ne.jp/Linux/RPMS/rpmforge/redhat/el6/en/$ARCH/rpmforge[/text]

ATrpmsの国内ミラーは理化学研究所にあるので、これを追加する。

[text title=”/etc/yum.repos.d/atrpms.repo” highlight=”5″ autolinks=”0″][atrpms]
name=Red Hat Enterprise Linux 6 – $basearch – ATrpms
failovermethod=priority
baseurl=http://dl.atrpms.net/el6-$basearch/atrpms/stable
  http://ftp.riken.jp/Linux/atrpms/sl6-$basearch/atrpms/stable[/text]

EPELのmirrorlistファイルは自動的に最適なミラー・サーバーだけをリストしてくれるので、Yum設定ファイルを編集する必要はない。

Scientific Linux 6 にはyum-plugin-fastestmirrorがデフォルトでは入ってないのでこれを入れる。yum-plugin-fastestmirrorを入れることで先ほど設定したミラー・サイトの中で最速のものを探し、それを今後は使うようになるので、結果的に海外のものより国内のものが優先して使用されることになる。

このままでは純正のslリポジトリよりもrpmforge / atrpms / epelのほうに新しいバージョンがあった場合、rpmforge / atrpms / epelのものがインストールされてしまうので、使用するリポジトリの優先度を決められるyum-plugin-prioritiesをインストールする。また、Kernelは上書きアップデートされず常に追加インストールされていくため、どんどんバージョン違いのKernelが残ってしまうため、それを簡単に消せるyum-utilsもインストールしておく。

yum-plugin-prioritiesのためにリポジトリの優先度を指定する。rpmforge / atrpms / epelをどの順で優先するかは好みだが、以下では Scientific Linux 5 での設定に合わせている(Scientific Linux 5 ではデフォルトでpriorityが設定されていた)。

[text title=”/etc/yum.repos.d/sl.repo” highlight=”6,13″ autolinks=”0″][sl]
……
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-sl file:///etc/pki/rpm-gpg/RPM-GPG-KEY-dawson
priority=10

[sl-security]
……
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-sl file:///etc/pki/rpm-gpg/RPM-GPG-KEY-dawson
priority=10[/text]

[text title=”/etc/yum.repos.d/rpmforge.repo” highlight=”7″ autolinks=”0″][rpmforge]
……
enabled = 1
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 1
priority=30[/text]

[text title=”/etc/yum.repos.d/atrpms.repo” highlight=”6″ autolinks=”0″][atrpms]
……
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-atrpms
priority=40[/text]

[text title=”/etc/yum.repos.d/epel.repo” highlight=”6″ autolinks=”0″][epel]
……
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
priority=50[/text]

DVDからインストールした場合は最新のパッケージが入っているわけではないので、まとめて最新にアップデートする。

以下のコマンドを実行すると、現在使用しているものと1世代古いもの以外の不要なKernelを削除してくれる。今のところ2バージョンしか入っていないので削除対象のものは存在しなかった。

パッケージを夜間に自動更新したい場合の設定を行なう。夜間アップデートしてほしくないパッケージは/etc/sysconfig/yum-autoupdateに記述する。デフォルトでいくつか書いてあるので、ボクは逆にこれをコメントアウトし、全てをアップデート対象にした。

[text title=”/etc/sysconfig/yum-autoupdate” firstline=”24″ highlight=”27,28″]# EXCLUDE

This is a space deliminated list

Example: EXCLUDE="kernel* openafs* -kmdl- kmod-* firmware"

#EXCLUDE="kernel* openafs* -kmdl- kmod-* firmware"
EXCLUDE=[/text]

<

p>自動更新は/etc/cron.daily/yum-autoupdateから行なわれる。

2 thoughts on “国内 Scientific Linux 6 サーバーのためのYum設定”

コメントを残す