トピック: yumによるYDLのアップデート方法 -- the Yellow Dog Updater, Modified


はじめに

「yum」はYellow Dog Linuxのシステムにおいて、自動アップデートやrpmパッケージのインストール/アンインストールを行うためのソフトウェアユーティリティです。新しいパッケージのアップデートに関する情報もyumによって素早く簡単に入手することができます。以下はyumの使用方法に関する解説です。

当初、Terra Softによって開発されたyup(Yellow Dog Updater)が、現在は、yum(Yellow Dog Updater, Modified)としてDuke大学のLinux@Dukeチームによって改良されメンテナンスされています。yumは現在では、RedHat、Fedora、Mandrakeなど主要なLinuxディストリビューションでも採用されています。

1. サーバの指定

yumで利用するサーバは、/etc/yum.conf の中で指定できます。初期状態では、ftp.yellowdoglinux.comが指定されていますが、接続が遅かったり途中で切断されてしまったりする場合は別のサーバを指定することもできます。(ミラーサイト一覧

/etc/yum.confの変更例:

[base]
name=Yellow Dog Linux 4.1 base
#baseurl=http://ftp.yellowdoglinux.com/pub/yellowdog/yum/4.1/base/
baseurl=http://mirror.pacific.net.au/linux/yellowdog/yum/4.1/base/

[updates]
name=Yellow Dog Linux 4.1 updates
#baseurl=http://ftp.yellowdoglinux.com/pub/yellowdog/yum/4.1/update/
baseurl=http://mirror.pacific.net.au/linux/yellowdog/yum/4.1/update/
[extras]
name=Yellow Dog Linux 4.1 Extras
#baseurl=http://ftp.yellowdoglinux.com/pub/yellowdog/yum/4.1/extras/
baseurl=http://mirror.pacific.net.au/linux/yellowdog/yum/4.1/extras/

... この例では、先頭が#でコメントアウトされている行が初期状態のサーバの指定箇所、そのすぐ下の太字の部分が後から追加した別のサーバの指定です。(設定ファイルの中の先頭が#の行はコメントとして無視されます。)

2. yumの基本コマンド

  • yum list -- インストールされていない利用可能なパッケージの一覧を表示します。
  • yum list updates -- インストール済みパッケージに対して提供されているアップデートパッケージの一覧を表示します。
  • yum list installed -- インストール済みパッケージの一覧を表示します。
  • yum install パッケージ名 -- 指定したパッケージまたはパッケージグループをインストールします。パッケージ間の依存性も自動的に解決してくれます。

    例:yum install php [ENTER]

  • yum update パッケージ名 -- 指定したパッケージにアップデートリリースが提供されている場合に、最新のパッケージへのアップデートを行います。システムにインストールされている全てのパッケージをアップデートする場合は、パッケージ名を指定せず単に「yum update」コマンドを実行してください。いずれの場合も、パッケージ間の依存性は自動的に解決されます。

    例:yum update php [ENTER]

    例:yum update [ENTER]

  • yum info パッケージ名 -- 指定したパッケージに関する簡潔な情報を表示します。(rpmコマンドの-qiオプションと違って)パッケージがシステムにインストールされている必要はありません。指定したパッケージにアップデートリリースが提供されている場合は、インストール済みパッケージとアップデートパッケージの両方についての情報が表示されます。

    例:yum info php [ENTER]

  • yum provides パッケージ名 -- 以下の例では、/usr/bin/phpファイルをインストールしたパッケージの名前を表示します。

    例:yum provides /usr/bin/php [ENTER]

  • yum remove パッケージ名 -- 指定したパッケージを削除します。(依存性の検査も行われます。)

    例:yum remove php [ENTER]

3. 自動アップデートからのパッケージの除外

パッケージの種類によっては、自動アップデートの対象に含めたくない場合があるかもしれません。例えば、kernelパッケージをyumでアップデートしたくなければ、太字の部分を/etc/yum.confに追記してください。

/etc/yum.confの変更例:

[main]
cachedir=/var/cache/yum
debuglevel=2
logfile=/var/log/yum.log
pkgpolicy=newest
distroverpkg=yellowdog-release
tolerant=1
exactarch=1
obsoletes=1
exclude=kernel*

4. その他

yumについてさらに詳しくは「official yum webapge」をご覧ください。