kazmax - Linux で自宅サーバー

yum|yum リポジトリの設定と追加

yumのリポジトリの設定は、repository セクションに記述します。オンラインリポジトリだけでなく、ローカルにあるリポジトリや、DVDのパスを指定する事もできます。repository セクションの書き方、リポジトリの追加手順を説明します。

Last Update : 2015年01月16日

yum|yum リポジトリの設定と追加 項目

  1. yum リポジトリの追加
  2. yum リポジトリの設定で使えるその他のオプション

1. yum リポジトリの追加

yumのリポジトリを追加する場合、最低限必要となる以下の3項目を、~.repo というファイルに記述し、/etc/yum.repos.d ディレクトリにファイルを保存します。

/etc/yum.conf の [repository] セクションに記述してもリポジトリを追加できますが、/etc/yum.repos.d ディレクトリに、.repo ファイルを作成する手法の方が推奨されています。例えば、rpmforgeやremiのような基本のリポジトリ以外のリポジトリを追加する際の rpm パッケージファイルの中には、/etc/yum.repos.d 配下におかれる ~.repo というファイルが含まれています。

最低限の設定

[リポジトリID]
name=リポジトリ名
baseurl=リポジトリの場所

各項目についての説明は以下のとおり

項目内容
リポジトリIDリポジトリをあらわすユニークなID。任意の名前を設定する。IDに空白は使用できない。

記述例)
[my_repo]
リポジトリ名リポジトリの名前を記述。yum repolist 等で表示される。
リポジトリの場所 リポジトリへのパスを記述する。http, ftp, ローカルパスを記述できる。
  • リポジトリが HTTP の場合は、http://path/to/repo と書く。
  • リポジトリが FTP の場合は、ftp://path/to/repo と書く。
  • リポジトリがローカルマシン上にある場合は、file:///path/to/repo と書く。(file://の後ろに「/」からはじまるリポジトリへのフルパスを記述するので、file:の後ろの「/」は3つとなる)
    ローカルマシン上に作ったリポジトリや、DVD、CDをリポジトリとしたい場合にこの書式を使ってリポジトリまでのフルパスを指定する。

memo

オンラインリポジトリのベーシック認証について

リポジトリがベーシック認証をもとめる場合は、以下のように記述します。

baseurl=http://Basic認証ユーザー名:パスワード@リポジトリのURL

リポジトリのURLが、「http://kazmax.zpp.jp/repo/」、Basic認証ユーザー名が「myuser」、パスワードが「mypasswd」の場合は、

baseurl=http://myuser:mypasswd@kazmax.zpp.jp/repo/

と、書きます

リポジトリ追加の例

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

以下を記入して保存するとリポジトリを追加できる。
[my_repo]
name=My Test Repository
baseurl=http://kazmax.zpp.jp/repo

リポジトリを確認する
# yum repolist
読み込んだプラグイン:downloadonly, fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * extras: ftp.iij.ad.jp
 * rpmforge: apt.sw.be
 * updates: centos.mirror.secureax.com
base                 | 3.7 kB     00:00
extras               | 3.4 kB     00:00
updates              | 3.4 kB     00:00

リポジトリー ID  リポジトリー名       状態
base             CentOS-6 - Base     6,518
extras           CentOS-6 - Extras      36
my_repo          My Test Repository     0 ← 追加されたリポジトリ
updates          CentOS-6 - Updates    565

memo

yum-config-manager コマンドでリポジトリを追加

yum-config-manager コマンドを使うと、リポジトリURLをコマンドにあたえるだけでリポジトリを追加することができます。この際、リポジトリIDや、リポジトリ名は自動で決定されます。

# yum-config-manager --add-repo http://kazmax.zpp.jp/repo ← --add-repo オプションを使う
読み込んだプラグイン:fastestmirror, refresh-packagekit
adding repo from: http://kazmax.zpp.jp/repo

[kazmax.zpp.jp_repo]
name=added from: http://kazmax.zpp.jp/repo
baseurl=http://kazmax.zpp.jp/repo
enabled=1

# ls -l /etc/yum.repos.d/kazmax.zpp.jp_repo.repo  ← リポジトリの設定ファイルが作成されている。
-rw-r--r-- 1 root root 110  1月 19 08:31 2015 /etc/yum.repos.d/kazmax.zpp.jp_repo.repo

2. yum リポジトリの設定で使えるその他のオプション

使えそうなオプションを紹介します。

オプション説明
enabled

yum コマンド利用時にこのリポジトリを使用するかどうかを指定する。

enabled=1 ← 1=使うの意味
か、
enabled=0 ← 0=使わないの意味

の様に設定する。

ここで設定していても、yum コマンド実行時に、--enablerepo=リポジトリID、--disablerepo=リポジトリIDでリポジトリの有効無効を切り替えることは可能。

proxy
proxy=http://example.com/

の様に記述する。

[repository]セクション内にproxy設定がない場合は、yum.confから設定を継承します。
[repository]セクション内にproxy設定を記述すると、yum.confの設定を上書きします。

また、yum.confで設定されているproxyを使いたくない場合は、

proxy=_none_

と記述するとyum.conf に設定されたproxy設定を無効化します。

proxy_username
proxy_username=プロキシ認証ユーザー名

proxy で指定したプロキシの認証ユーザーを指定する。認証ユーザーが不要な場合は書かなくてよい。

proxy_password
proxy_password=パスワード

proxy で指定したプロキシの認証パスワードを指定する。不要な場合は書かなくてよい。

ここで紹介するオプション以外にもたくさんのオプションがあります。

# man yum.conf

とすると、その他のオプションの詳細を確認することができます。

パッケージ管理 関連記事
Linux 基礎知識 関連記事