yumリポジトリ設定
yumとは「Yellowdog Updater Modified 」の略。LinuxのRPM互換パッケージ管理システムである。
CentOS等のRedHat系Linuxではアプリのインストールに「rpm(Red Hat Package Manager)」形式のバイナリファイルを使用できる。
rpmファイルはインストールが簡単でありrpmファイル同士の依存関係も明示してくれるため扱いやすい反面必要なファイルがまとまっていない為、規模が大きくなると集めるのが大変かつrpmファイルインストールの順番を考える必要があり、素人には扱いづらい一面もあった。
これらインストールに必要なファイルをネットを通じて収集し順番を考えてインストールしてくれる仕組みとしてyumは開発された。
今回は、
- 環境1:インターネットにアクセス可能
- 環境2:インターネットへのアクセス不可
- 環境3:イントラ内にリポジトリサーバ有り
それぞれの環境でyumによるインストールが可能になるよう、リポジトリ登録を行う。
目的
CentOSのローカル環境でリポジトリを設定し、yumが利用できるようにする。
構築条件
構築機器
- 仮想サーバ SUN VirtualBox 4.0 で構築
作成環境
OS | CentOS 5.5 64bit版 |
サーバ作成条件
サーバIP | 192.168.0.10/24 |
ホスト名 | hogehogeServer |
user | hogehoge |
userpasswd | hogehogepass |
手順記入ルール
- コマンド行頭記号で 「$」はユーザ権限 「#」はスーパーユーザー権限 を表示
- コマンドが長くなる場合は、行末に「\」を記述し複数行に記述。
前準備
- CentOSインストール 実施
- yumリポジトリサーバ を構築 ★環境3:イントラ内にリポジトリサーバ有りの場合
★以下サーバ環境にあわせて設定を実施
環境1:インターネットにアクセス可能
(1)yumリポジトリ動作を確認
【Telnet】
- rootでログイン
$ su パスワード:
- yumキャッシュクリア
# yum clean all
Loaded plugins: fastestmirror Cleaning up Everything Cleaning up list of fastest mirrors
- yum確認
# yum list all
Loaded plugins: fastestmirror Determining fastest mirrors * addons: ftp.iij.ad.jp ←「addons」 があることを確認 * base: ftp.iij.ad.jp ←「base」 があることを確認 * extras: ftp.iij.ad.jp ←「extras」 があることを確認 * updates: ftp.iij.ad.jp ←「updates」があることを確認
:
- 終了
# exit
exit $
過不足がある場合、以下手順で活性化を実施
- 確認
# ls -l /etc/yum.repos.d/
-rw-r--r-- 1 root root 2245 4月 26 2010 CentOS-Base.repo -rw-r--r-- 1 root root 626 4月 26 2010 CentOS-Media.repo
- 活性化登録
# vi /etc/yum.repos.d/CentOS-Base.repo
- 以下リポジトリを「enable=1」に変更
[base] enabled=1 ←「1」に変更
#[updates] enabled=1 ←「1」に変更
#[addons] enabled=1 ←「1」に変更
#[extras] enabled=1 ←「1」に変更
#[centosplus] enabled=0 ←「0」に変更
#[contrib] enabled=0 ←「1」に変更
環境2:インタネットへのアクセス不可
★インストールDVDをyumリポジトリとして登録
(1)リポジトリ外部アクセスを停止
【Telnet】
- rootでログイン
$ su パスワード:
- 確認
# ls -l /etc/yum.repos.d/
-rw-r--r-- 1 root root 2245 4月 26 2010 CentOS-Base.repo -rw-r--r-- 1 root root 626 4月 26 2010 CentOS-Media.repo
- 不活性化登録
# vi /etc/yum.repos.d/CentOS-Base.repo
- 以下リポジトリを「enable=0」に変更 (「enable=」が無い場合は行追加)
[base] enabled=0 ←「0」に変更
#[updates] enabled=0 ←「0」に変更
#[addons] enabled=0 ←「0」に変更
#[extras] enabled=0 ←「0」に変更
#[centosplus] enabled=0 ←「0」に変更
#[contrib] enabled=0 ←「0」に変更
(2)リポジトリ内部アクセスを活性化
# vi /etc/yum.repos.d/CentOS-Media.repo
- 以下リポジトリを「enable=1」に変更
[c5-media] baseurl=file:///media/CentOS/ ←確認(DVDインストール先) file:///media/cdrom/ file:///media/cdrecorder/ enabled=1 ←「1」に変更
(3)DVDをドライブにセット
インストールに使ったDVDメディアをドライブにセット
(4)リポジトリ登録
以下のどちらかを実行
DVDメディアを直接マウントしてリポジトリに指定する場合
- フォルダ作成
# mkdir /media/CentOS/
- 確認
# ls -l /media
drwxr-xr-x 2 root root 4096 1月 30 19:03 CentOS
- DVDドライブマウント
# mount /dev/dvd /media/CentOS/
mount: ブロックデバイス /dev/dvd は書き込み禁止です、読込み専用でマウントします
- 確認
# yum list all
Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * c5-media: ←「c5-media」 があることを確認
★yum完了後
- DVDドライブアンマウント
# umount /mnt
DVDメディアをHDDにコピーしてリポジトリに指定する場合
★HDD容量に余裕がありyum使用頻度が高いと予想される場合、
HDD上にDVDメディアコピーを行う
- DVDドライブマウント
# mount /dev/dvd /mnt
mount: ブロックデバイス /dev/dvd は書き込み禁止です、読込み専用でマウントします
- DVDメディアコピー
# cp -R /mnt/* /media/CentOS/
- DVDドライブアンマウント
# umount /mnt
- 確認
# yum list all
Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * c5-media: ←「c5-media」 があることを確認
:
★64bit版の場合DVDが2枚あるので、DVD入れ替え後「DVDドライブマウント」以降手順を繰り返す
- 終了
# exit
exit $
環境3:イントラ内にリポジトリサーバ有り
★yumリポジトリサーバ 構築済みであること
- 手順作成条件
イントラリポジトリサーバ http://192.168.0.20/yum/
(1)リポジトリ外部アクセスを停止
【Telnet】
- rootでログイン
$ su パスワード:
- 確認
# ls -l /etc/yum.repos.d/
-rw-r--r-- 1 root root 2245 4月 26 2010 CentOS-Base.repo -rw-r--r-- 1 root root 626 4月 26 2010 CentOS-Media.repo
- 不活性化登録
# vi /etc/yum.repos.d/CentOS-Base.repo
- 以下リポジトリを「enable=0」に変更 (「enable=」が無い場合は行追加)
[base] enabled=0 ←「0」に変更
#[updates] enabled=0 ←「0」に変更
#[addons] enabled=0 ←「0」に変更
#[extras] enabled=0 ←「0」に変更
#[centosplus] enabled=0 ←「0」に変更
#[contrib] enabled=0 ←「0」に変更
- 不活性化登録
# vi /etc/yum.repos.d/CentOS-Media.repo
- 以下リポジトリを「enable=0」に変更
[c5-media] baseurl=file:///media/CentOS/ file:///media/cdrom/ file:///media/cdrecorder/ enabled=0 ←「0」に変更
(2)yumリポジトリ作成
★手順 yumリポジトリサーバ#intra にてyumリポジトリを作成
[今回実施手順]
- yumリポジトリ新規作成
# vi /etc/yum.repos.d/intra-repo.repo
- 全面追加
[intra-repo] name=CentOS-5.5 - Intra repo baseurl=http://192.168.0.20/yum/$basearch/ gpgcheck=0 enabled=1
[intra-repo-rpm] name=Intra repo rpm baseurl=http://192.168.0.20/yum/rpm/ gpgcheck=0 enabled=1
[intra-repo-extra] name=Intra repo extra baseurl=http://192.168.0.20/yum/extra/ gpgcheck=0 enabled=0
(3)yum動作確認
- yumキャッシュクリア
# yum clean all
Loaded plugins: fastestmirror Cleaning up Everything Cleaning up list of fastest mirrors
- yum確認
# yum list all
Loaded plugins: fastestmirror Determining fastest mirrors
:
- 終了
# exit
exit $
遭遇したトラブル
特になし
問題:
特になし
原因:
特になし
謝辞
テキスト作成に当たり、以下サイトを参考にさせて頂きました。ありがとうございます。
http://www.proustcafe.com/2006/01/createrepoyum.html
http://blog.77jp.net/%E3%81%9D%E3%81%AE%E4%BB%96%E3%80%80linux/linux-dvd-%E3%83%89%E3%83%A9%E3%82%A4%E3%83%96%E3%81%AE%E3%83%9E%E3%82%A6%E3%83%B3%E3%83%88%E6%96%B9%E6%B3%95.html