![]() |
LINUX |
yumでローカルrepo
・ローカルにupdate用のミラーサイトを作ります
・yum実行時にアクセスできるサーバならどこでも良いです
・実行例はanonymous接続できるFTPサーバを使っています
・CentOS 5.x の場合です
yum関連パッケージのインストール[sola@saturn:~] $ su - passwd: [root@saturn:~] # yum install yum-fastestmirror # yum install yum-priorities # yum install yum-utils # yum install createrepo
FTPサーバに専用ディレクトリを作ります・FTPでanonymous接続できるディレクトリに作成します
・CentOSのupdate用、自前のrpm用のディレクトリを作成
[root@saturn:~]
# mkdir -p /home/ftp/centos/5/updates
# mkdir -p /home/ftp/rpm
ファイルをコピーします・rsyncコマンドで外部のミラーサーバと同期させます
・CentOSサイトのMirrorListからrsync可能なサイトを探します
・例 ftp.riken.jp/centos (通常のftpサイトとはパスが違うので注意)
# rsync -avH rsync://ftp.riken.jp/centos/5/updates/i386 --delete /home/ftp/centos/5/updates/
・自前のrpmパッケージを該当ディレクトリにコピーします (省略)
<repodata>を作成します・CentOSのupdate用<repodata>はrsyncしたものを使用します
・ディレクトリの構成がミラーサーバとローカルで異なる場合は
・ファイルの更新ごとに<repodata>を作成します
[root@saturn:~]
# createrepo /home/ftp/rpm
設定ファイルの修正と新規作成:/etc/yum.conf
・kernelのアップデートで、古いのを残す個数を設定します
・デフォルトは 0 CentOS5.6の設定値は 5 個人的に 3
・省略
# installonly_limit = 5 installonly_limit = 3
・省略
:/etc/yum/pluginconf.d/priorities.conf
[main] enabled = 1
:/etc/yum.repos.d/CentOS-Base.repo
・priorityで優先度を指定します
・ローカルの優先度を上位にします
[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=file:///etc/pki/rpm-gpg/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=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
priority=2
#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=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
priority=1
・省略
:/etc/yum.repos.d/Local.repo
・priorityで優先度を指定します
・ローカルの優先度を上位にします
・baseurlにローカルのFTPサーバを指定します
・名前解決できない場合は、IPアドレスで指定します
・gpg署名をしていない場合、gpgcheckを無効にします
[Local] name=local - ftp baseurl=ftp://saturn.528p.com/rpm/ gpgcheck=0 enabled=0
[Lupdates]
name=CentOS-$releasever - Updates
baseurl=ftp://saturn.528p.com/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
priority=1
・cronで定期的にrsyncやupdateもできますが
・クライアントマシンで実証してからupdateをかけています
・yum updateの実行
・設定を変更したら、最初に"yum clean all"を実行します
[root@saturn:~]
# yum clean all
# yum update
・Localのupdateの場合(Local.repoのみ有効にする)
# yum --disablerepo=\* --enablerepo=Local update
![]() |
Copyright(c) 528p.com All Rights Reserved. |

