yum(Yellow dog Updater, Modified)は、RPMパッケージを操作する為のソフトウェアです。 yumでは、依存関係があるパッケージも自動的にインストールされます。また、yumを利用する事によって、セキュリティーホールのアップデートや、バグフィックスパッケージも、より簡単に行う事が可能です。さらには、システム全体のアップデートも、より簡単に行う事が可能です。
■レポジトリについて
Fedoraは自由なソフトウェアのみを提供している為、MP3等のように特許によって保護されている技術を利用したソフトウェアを配布していません。特許によって保護された技術を利用したFedora用のソフトウェアはFreshRPMもしくはrpm.livna.org から提供されています。FreshRPMとrpm.livna.orgの両方のレポジトリを同時に利用すると問題が発生する可能性があります。利用する際はどちらかひとつにしてください。また、FedoraFAQが提供しているrpmでyum設定を行うには、FedoraFAQのyumに関する質問を参考にしてください。
FedoraFAQが更新されましたので、FedoraFAQが提供しているyumの設定ファイルをインストールすることにしました。 07/02/15
[root@linux ~]# rpm -Uvh http://www.fedorafaq.org/yum http://rpm.livna.org/livna-release-6.rpm http://www.fedorafaq.org/yum を取得中 http://rpm.livna.org/livna-release-6.rpm を取得中 警告: /var/tmp/rpm-xfer.4X6tSX: ヘッダ V3 DSA signature: NOKEY, key ID a109b1ec 準備中... ########################################### [100%] パッケージ livna-release-6-1 は既にインストールされています。 [root@linux ~]#
上記のようにlivna-release-6が既にインストールされている場合は、FedoraFAQが提供しているyumの設定ファイルのインストールが完了しません。
いったんlivna-release-6をアンインストールしてから再度インストールします。
[root@linux ~]# rpm -e livna-release-6 [root@linux ~]# rpm -Uvh http://www.fedorafaq.org/yum http://rpm.livna.org/livna-release-6.rpm http://www.fedorafaq.org/yum を取得中 http://rpm.livna.org/livna-release-6.rpm を取得中 警告: /var/tmp/rpm-xfer.DLCrTP: ヘッダ V3 DSA signature: NOKEY, key ID a109b1ec 準備中... ########################################### [100%] 1:livna-release ########################################### [ 50%] 2:yum-fedorafaq ########################################### [100%] [root@linux ~]
■ミラーについて
Fedora Core 6でもFedora Projectはミラーリストを用意しており、デフォルトで世界中のミラーに接続しにいきます。ただこのままだととんでもなく遅いサーバに接続しにいく場合があります。 Fedora Core 6では速いミラーを優先的に接続しにいくプラグインが提供されており、そのプラグインをインストールする事により、遅いサーバに接続する確立が非常に低くなります。そのプラグインをインストールするには以下のコマンドを入力してください。
[root@linux ~]# yum install yum-fastestmirror Loading "installonlyn" plugin Setting up Install Process Setting up repositories livna 100% |=========================| 1.1 kB 00:00 core 100% |=========================| 1.1 kB 00:00 updates 100% |=========================| 1.2 kB 00:00 extras 100% |=========================| 1.1 kB 00:00 Reading repository metadata in from local files primary.xml.gz 100% |=========================| 80 kB 00:01 ################################################## 198/198 Parsing package install arguments Resolving Dependencies --> Populating transaction set with selected packages. Please wait. ---> Downloading header for yum-fastestmirror to pack into transaction set. yum-fastestmirror-1.0-2.f 100% |=========================| 4.0 kB 00:00 ---> Package yum-fastestmirror.noarch 0:1.0-2.fc6 set to be updated --> Running transaction check Dependencies Resolved ============================================================ Package Arch Version Repository Size ============================================================ Installing: yum-fastestmirror noarch 1.0-2.fc6 extras 9.4 k Transaction Summary ============================================================ Install 1 Package(s) Update 0 Package(s) Remove 0 Package(s) Total download size: 9.4 k Is this ok [y/N]: y Downloading Packages: (1/1): yum-fastestmirror- 100% |=========================| 9.4 kB 00:00 warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY, key ID 1ac70ce6 Importing GPG key 0x1AC70CE6 "Fedora Project" Is this ok [y/N]: y Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing: yum-fastestmirror ######################### [1/1] Installed: yum-fastestmirror.noarch 0:1.0-2.fc6 Complete! [root@linux ~]#
■yumレポジトリ設定ファイルの変更
上記設定で速いミラーを優先的に接続しにいくプラグインをインストールしたのですが、アップデートでエラーになることが多かったのでレポジトリ設定ファイルを以下のように変更します。
fedora-core.repo
[root@linux ~]# vi /etc/yum.repos.d/fedora-core.repo #baseurl=http://download.fedora.redhat.com/pub/fedora/linux/core/$releasever/$basearch/os/ mirrorlist=http://fedora.redhat.com/download/mirrors/fedora-core-$releasever ↓ baseurl=http://download.fedora.redhat.com/pub/fedora/linux/core/$releasever/$basearch/os/ #mirrorlist=http://fedora.redhat.com/download/mirrors/fedora-core-$releasever
fedora-updates.repo
[root@linux ~]# vi /etc/yum.repos.d/fedora-updates.repo #baseurl=http://download.fedora.redhat.com/pub/fedora/linux/core/updates/$releasever/$basearch/ mirrorlist=http://fedora.redhat.com/download/mirrors/updates-released-fc$releasever ↓ baseurl=http://download.fedora.redhat.com/pub/fedora/linux/core/updates/$releasever/$basearch/ #mirrorlist=http://fedora.redhat.com/download/mirrors/updates-released-fc$releasever
fedora-extras.repo
[root@linux ~]# vi /etc/yum.repos.d/fedora-extras.repo #baseurl=http://download.fedora.redhat.com/pub/fedora/linux/extras/$releasever/$basearch/ mirrorlist=http://fedora.redhat.com/download/mirrors/fedora-extras-$releasever ↓ baseurl=http://download.fedora.redhat.com/pub/fedora/linux/extras/$releasever/$basearch/ #mirrorlist=http://fedora.redhat.com/download/mirrors/fedora-extras-$releasever
■yumのデータベース情報更新
ローカルに保存されているrpmヘッダ情報を最新の情報に更新します。
yumのデータベース情報更新 [root@linux ~]# yum list Loading "fastestmirror" plugin Loading "installonlyn" plugin Setting up repositories Loading mirror speeds from cached hostfile Reading repository metadata in from local files ・ ・ ・ インストールパッケージの確認 [root@linux ~]# yum list installed Loading "fastestmirror" plugin Loading "installonlyn" plugin Setting up repositories Loading mirror speeds from cached hostfile Reading repository metadata in from local files ・ ・ ・ yum-fastestmirror.noarch 1.0-2.fc6 installed yum-metadata-parser.i386 1.0-8.fc6 installed yum-updatesd.noarch 3.0-6 installed zenity.i386 2.16.0-1.fc6 installed zip.i386 2.31-1.2.2 installed zlib.i386 1.2.3-3 installed zlib-devel.i386 1.2.3-3 installed
■アップデート情報の確認
アップデート情報の確認 [root@linux ~]# yum check-update Loading "fastestmirror" plugin Loading "installonlyn" plugin Setting up repositories Loading mirror speeds from cached hostfile Reading repository metadata in from local files ・ ・ ・ yxorg-x11-xinit.i386 1.0.1-2.FC5.0 updates xterm.i386 213-1.FC5 updates yelp.i386 2.14.3-1.fc5 updates ypbind.i386 3:1.19-1 updates yum.noarch 2.6.1-0.fc5 updates
■一括アップデート
インストールされているパッケージを全てアップデートします。
パッケージの一括アップデート [root@linux ~]# yum update Loading "fastestmirror" plugin Loading "installonlyn" plugin Setting up repositories Loading mirror speeds from cached hostfile Reading repository metadata in from local files ・ ・ ・ Transaction Summary ============================================================ Install 1 Package(s) Update 18 Package(s) Remove 0 Package(s) Total download size: 23 M Is this ok [y/N]: y ← インストールして良いかの確認 Downloading Packages: (1/19): rsh-0.17-37.fc6.i 100% |=========================| 43 kB 00:00 (2/19): libbeagle-0.2.10- 100% |=========================| 43 kB 00:00 (3/19): autofs-5.0.1-0.rc 100% |=========================| 643 kB 00:01 ・ ・ ・ Cleanup : gdb ####################### [36/38] Cleanup : system-config-users ####################### [37/38] Cleanup : mutt ####################### [38/38] Installed: bluez-gnome.i386 0:0.6-1.fc6 Updated: autofs.i386 1:5.0.1-0.rc2.17 beagle.i386 0:0.2.10-5.fc6 beagle-evolution.i386 0:0.2.10-5.fc6 beagle-gui.i386 0:0.2.10-5.fc6 bind-libs.i386 30:9.3.3-4.fc6 bind-utils.i386 30:9.3.3-4.fc6 bluez-utils.i386 0:3.7-2 frysk.i686 0:0.0.1.2006.10.23.rh1-1.fc6 gdb.i386 0:6.5-13.fc6 libbeagle.i386 0:0.2.10-5.fc6 mutt.i386 5:1.4.2.2-3.fc6 qt.i386 1:3.3.7-0.1.fc6 rsh.i386 0:0.17-37.fc6 shadow-utils.i386 2:4.0.17-7.fc6 system-config-date.noarch 0:1.8.8-1.fc6 system-config-users.noarch 0:1.2.47-1.fc6 tar.i386 2:1.15.1-21.fc6 vnc-server.i386 0:4.1.2-5.fc6 Replaced: bluez-pin.i386 0:0.30-5 Complete!・
アップデートしてよいかの問い合わせに全て” y “で回答するためには -y オプションを指定します。
パッケージの一括アップデート [root@linux ~]# yum -y update
■yumによるパッケージ更新時にエラーが表示される場合
yumコマンドでパッケージの更新を行った際に、エラーが表示されることがある。これはyumのデータベースが壊れていることが考えられるので、以下のコマンドを実行してyumのデータベースをクリアしてみる。
[root@linux ~]# yum clean all [root@linux ~]# yum update
■その他のコマンド
パッケージのインストール
[root@linux ~]# yum install パッケージ名
パッケージのアップデート
[root@linux ~]# yum update パッケージ名
パッケージの検索
[root@linux ~]# yum search パッケージ名
パッケージの詳細表示
[root@linux ~]# yum info パッケージ名
パッケージのアンインストール
[root@linux ~]# yum remove パッケージ名
■yumの自動実行
最初、yum-updatesdでパッケージの自動更新を行うように設定したのですが、どうもうまく機能してないようでしたので、cronでアップデートするようにしました。(2006/12/10変更)
Fedora Core 6では、システムの起動時にyum-updatesdを実行し、1時間おきにアップデートパッケージの有無をチェックする為、このサービスが動作している間はyumコマンドが実行できません。cronでアップデートを行った時にyum-updatesdが動いているとうまくアップデートできない可能性があるので、yum-updatesdのサービスは停止します。
■yum-updatesdのサービスを停止
現在実行中のyum-updatesdを停止 [root@linux ~]# service yum-updatesd stop yum-updates を停止中: [ OK ] システム起動時のyum-updatesdの実行も停止 [root@linux ~]# chkconfig yum-updatesd off
■yum updateの定期自動実行設定
パッケージ自動更新スクリプト作成 [root@linux ~]# vi /root/yum_upgrade.sh #!/bin/sh /usr/bin/yum -y update yum > /dev/null 2>&1 ; \ /usr/bin/yum -y update > /dev/null 2>&1 パッケージ自動更新スクリプトへ実行権限付加 [root@linux ~]# chmod 700 /root/yum_upgrade.sh 自動で実行する為にcronに登録します [root@linux ~]# crontab -e 00 06 * * * /root/yum_upgrade.sh