nKB

nKB

シンプルにいこうよ

Linux yumリポジトリ

対象:CentOS6.3

リポジトリとは 貯蔵庫や倉庫などの意味を持つ英単語。
IT用語としては、ソースコードや設計データの仕様といった情報が
保存されているデータベースを表す。
ここではCentOS用のパッケージ等が格納されているサーバのことをいう。


リポジトリの種類

EPEL(Extra Packages for Enterprise Linuxリポジトリ
Fedoraで利用されているパッケージをRHELCentOS等の
互換ディストリビューションで使用したいという要望から始まった。

Remiリポジトリ
様々なバージョンのphpのパッケージを配布しているレポジトリのこと。

yum設定ファイル

大きく分けて2種類ある。
/etc/yum.conf…yum全体の動作に影響する設定ファイル
/etc/yum.reps.d/*.repo…個別の設定ファイル


リポジトリ追加

EPELリポジトリの追加

# yum -y install epel-release


Remiリポジトリの追加
Remiで提供されるソフトウェアはEPELリポジトリも必須要件となっている為、 EPELリポジトリをインストールしたあとRemiリポジトリ情報をインストールする。

# yum -y install http://ftp.riken.jp/Linux/remi/enterprise/remi-release-7.rpm

Remi's RPM repository
http://ftp.riken.jp/Linux/remi/

f:id:t2nak:20200501123037p:plain
「remi-release-7.rpm」にマウスカーソルを合わせると左下にパスが表示される。
マウスカーソルを合わせたまま、右クリックでパスのコピーができる。

Remiリポジトリの有効化

/etc/yum.repos.d/remi.repo

[remi]
enabled=0
 ↓
enabled=1


ローカル環境にyumリポジトリを作成する

準備

createrepo=リポジトリを作成するためのツール

要件

パラメータ

ローカルリポジトリディレクトリパス:/var/repo

手順

1. ローカルリポジトリ用のディレクトリを作る

# mkdir /var/repo


2. リモートリポジトリからデータをコピーする

CentOS6用

# rsync -rptv --delete rsync://ftp.riken.jp/centos/6/os/ /var/repo/centos/6/os/
# rsync -rptv --delete rsync://ftp.riken.jp/centos/6/updates/ /var/repo/centos/6/updates/

CentOS7用

# rsync -rptv --delete rsync://ftp.riken.jp/centos/7/os/ /var/repo/centos/6/os/
# rsync -rptv --delete rsync://ftp.riken.jp/centos/7/updates/ /var/repo/centos/6/updates/

os→11Gbyte updates → 5Gbyte
3. リポジトリをセットアップする。データベースが作成される。

# createrepo .


4. リポジトリの設定ファイルを記述する

# vi /etc/yum.repos.d/local_repo.repo


[local_repo]
name=localrepo
baseurl=file:///var/repo
enabled=1
gpgcheck=0


5. リポジトリが有効になっているか確認する

# yum repolist all


6. ローカルリポジトリからダウンロードする。

yum --disablerepo=\* --enablerepo=<ローカルリポジトリ名> list


7. リポジトリRPMファイルを追加した場合は更新コマンドを実行する

# createrepo --update /var/repo


参考

ローカル環境内に yum リポジトリを作成する : まだプログラマーですが何か?

【Linuxを使いこなす】 CentOSのローカルリポジトリを構築しよう | システムや業務のプロデュースカンパニー | 株式会社アドックインターナショナル