yum はdebian でいうapt-get
みたいなものと説明すれば一番わかりやすいでしょう。Red Hat の頃はup2date
というパッケージをアップグレードするコマンドがありましたが、Fedora Core
からはyum に置き換わっています。手元にパッケージがなくても依存関係を考慮しながら即座にインストール/アンインストールすることができるのでLinux初心者でなくとも重宝するでしょう。
|
|
■yum のインストール
yum はFedora Core にデフォルトでインストールされています。インストールされていない場合はダウンロードしてきてください。
# rpm -q yum
yum-2.0.7-1.1 |
|
■yum の前準備
yum を使う前に前もって/etc/yum.conf を編集しておきましょう。この設定ファイルでは、yum
でパッケージをダウンロードしてくる際に接続するサーバー名を指定します。出来る限り日本にあるサーバーで回線速度の速いサーバー(KDDI
や理研、IIJ など)を指定するべきでしょう(※FC3 になると、/etc/yum.conf は直接編集せずとも、/etc/yum.repos.d/
以下にオリジナルなファイルを作成し、そこにサーバー名を記述しておけば良いようになっています。後述。)
# vi /etc/yum.conf
[base]
name=Fedora Core $releasever - $basearch
- Base
baseurl=http://ftp.kddilabs.jp/Linux/packages/fedora/core/$releasever/$ARCH/os/
ftp://ftp.riken.go.jp/fedora/core/$releasever/$ARCH/os/
ftp://ftp.iij.ad.jp/pub/linux/fedora/core/$releasever/$ARCH/os/
[updates-released]
baseurl=http://ftp.kddilabs.jp/Linux/packages/fedora/core/updates/$releasever/$ARCH/
ftp://ftp.riken.go.jp/fedora/core/updates/$releasever/$ARCH/
ftp://ftp.iij.ad.jp/pub/linux/fedora/core/updates/$releasever/$ARCH/
|
|
■GPGキーチェック
Fedora Core 3 ではじめてパッケージをインストールしようとした場合、以下のようなエラーが発生します。これは、FC
3ではパッケージのGPGキーチェックがデフォルトでオンになっているためです。
# yum install telnet
You have enabled checking of packages
via GPG keys. This is a good thing.
However, you do not have any GPG public
keys installed. You need to download the
keys for packages you wish to install and
install them.
You can do that by running the command:
rpm --import public.gpg.key
For more information contact your distribution
or package provider. |
|
yumコマンドを実行する前に、以下のコマンドを実行してGPGキーをインストールしておきましょう。
rpm --import /usr/share/rhn/RPM-GPG-KEY-fedora |
|
■yum の基本的な使用法
yum の使い方は簡単です。ソフトウェアをインストールするには、以下のコマンドを実行します。
削除する場合は、
インストールされているパッケージ全てをまとめてアップデートするには、yum updateを実行します(注:カーネルもアップグレードされます)。このとき、-y
オプションをつけると途中で現れるメッセージに対して全て「Yes」で答えるようになります。予め全てのパッケージをアップグレードすることが決定しているような場合にはつけたほうが良いでしょう。なお、前もってアップデートパッケージがあるかどうかを確認する場合には、yum
check-updateを実行します。
# yum check-update
Gathering header information file(s) from server(s)
Server: Fedora Core 3 - i386 - Base
Server: Fedora Core 3 - i386 - Released Updates
Finding updated packages
Downloading needed headers
Name Arch Version Repo
----------------------------------------------------------
arts i386 8:1.4.2-0.fc3.3 updates-released
cups i386 1:1.1.22-0.rc1.8.6 updates-released
cups-libs i386 1:1.1.22-0.rc1.8.6 updates-released
vim-common i386 1:6.3.086-0.fc3.1 updates-released
vim-enhanced i386 1:6.3.086-0.fc3.1 updates-released
vim-minimal i386 1:6.3.086-0.fc3.1 updates-released
# yum update
or
# yum -y update |
|
特定のパッケージのみをアップデートする場合は、以下のようにします。
■yum update でアップデートを除外したいパッケージの指定
yum update でまとめてupdate したいけれど特定のパッケージだけはアップデートを除外したいというような場合もあるでしょう。その場合は、/etc/yum.conf
の[main] に以下のような行を追加します。
# vi /etc/yum.conf
[main]
exclude= gcc* kde* openssh* kernel-smp* |
|
■yum のキャッシュをクリアする [ yum clean ]
長い間、yum を使用しているとダウンロードしたアップデートパッケージ等のキャッシュ用のファイルも溜まってきます。yum
のキャッシュは/var/cache/yum に格納されており、現在どのぐらいの容量を占有しているかdu
で確認しておきましょう。必要なければ、yum clean でダウンロードしたパッケージや古いヘッダを削除してしまいましょう。
# du -sh /var/cache/yum/
32M /var/cache/yum/
# yum clean |
|
■パッケージの検索 [ yum search ]
パッケージの検索を行いたい場合は、yum search を実行します。検索の対象となるは、RPMファイルの「Name」、「Packager」、「Dummary」、「Description」の各フィールドです。
# yum search samba
省略
Available package: samba.i386 0:3.0.10-1.fc3
from updates-released matches with
Samba SMB サーバー
Available package: samba.i386 0:3.0.10-1.fc3
from updates-released matches with
samba
Available package: system-config-samba.noarch
0:1.2.28-0.fc3.1 from updates-released matches
with
Samba server configuration tool
Available package: system-config-samba.noarch
0:1.2.28-0.fc3.1 from updates-released matches
with
system-config-samba
Available package: samba-swat.i386 0:3.0.10-1.fc3
from updates-released matches with
samba-swat
5 results returned
Looking in installed packages for a providing
package
Installed package: samba-common.i386 0:3.0.10-1.fc3
matches with
samba-common
Installed package: samba-client.i386 0:3.0.10-1.fc3
matches with
samba-client
2 results returned |
|
■利用可能なパッケージの一覧を表示 [ yum list ]
# yum list
xmms-skins i386 1:1.2.10-9 base
xojpanel i386 0.91-9 base
xorg-x11-Xdmx i386 6.8.2-1.FC3.13 updates-released
xorg-x11-Xnest i386 6.8.2-1.FC3.13 updates-released
・・・ |
|
インストール済みのパッケージ一覧を表示するには、yum list installed を実行します。その他にも、available(インストール可能なパッケージのリストを表示する)、updates(アップデート可能なパッケージのリストを表示する)、recent(最近追加されたパッケージのリストを表示する)のオプションをつけることができます。
■指定したパッケージの情報を表示 [ yum info ]
パッケージの情報を表示するには、「yum info パッケージ名」を実行します。yum info だけだと、利用可能な全パッケージの情報が全て表示されてしまいます。その他にも、available(インストール可能なパッケージのリストを表示する)、updates(アップデート可能なパッケージのリストを表示する)、recent(最近追加されたパッケージのリストを表示する)のオプションをつけることができます。
# yum info openssh
省略
Name : openssh
Arch : i386
Version: 3.9p1
Release: 8.0.2
Size : 730.83 kB
Group : アプリケーション/インターネット
Repo : Locally Installed
Summary: SSHプロトコルのバージョン1と2のOpenSSH 実装
Description:
OpenSSHはSSH (Secure SHell)プロトコルのOpenBSDによる実装です。SSHは
rlogin や rsh の代わりに使用するプログラムで、
信頼性の低い 2 台のホストの間で安全でないネットワークを経由して、
暗号化された安全な通信を実行できます。X11 接続および任意の TCP/IP
ポートも安全なチャネル経由で転送できます。共有鍵認証でサーバにパスワード
なしでアクセスすることもできます。
このパッケージには、OpenSSH のクライアントとサーバーの両方に必要なコアファイルが
含まれています。このパッケージを利用するには、openssh-clients
または
openssh-server、あるいはその両方をインストールする必要があります。 |
|
■特定のファイルが提供されているパッケージ名を調べる [ yum provides ]
パッケージをインストールしようとした際に、特定のライブラリが開けない(存在しない)ために、インストールできなかったり、コンパイルエラーになったりすることはよくある話しです。そこで存在しないと言われているそのファイルがどのパッケージに含まれているかを調べることで、どのパッケージをインストールすればいいのかがすぐにわかります。
# yum provides libg2c.so.0
省略
Looking in available packages for a providing
package
No packages found
Looking in installed packages for a providing
package
Installed package: libf2c.i386 0:3.4.4-2.fc3
matches with
/usr/lib/libg2c.so.0
Installed package: libf2c.i386 0:3.4.4-2.fc3
matches with
/usr/lib/libg2c.so.0.0.0
Installed package: libf2c.i386 0:3.4.4-2.fc3
matches with
libg2c.so.0
3 results returned |
|
■FC3 でyumがアクセスするサーバを指定する
FC3からは、/etc/yum.conf のデフォルトの記述方法が変更されており、/etc/yum.repos.d/ 以下にオリジナルのファイルを作成し、そこにyum
でアクセスするためのサーバーを指定すればいいようになっています。まずは、base 用とupdates 用の2つのオリジナルファイルを作成します。
# vi /etc/yum.repos.d/local-base
http://ftp.kddilabs.jp/Linux/packages/fedora/core/$releasever/$ARCH/os/
ftp://ftp.riken.go.jp/fedora/core/$releaseve/$ARCH/os/
ftp://ftp.iij.ad.jp/pub/linux/fedora/core/$releaseve/$ARCH/os/
# vi /etc/yum.repos.d/local-updates
http://ftp.kddilabs.jp/Linux/packages/fedora/core/updates/$releaseve/$ARCH/
ftp://ftp.riken.go.jp/fedora/core/updates/$releaseve/$ARCH/
ftp://ftp.iij.ad.jp/pub/linux/fedora/core/updates/$releaseve/$ARCH/
|
|
次に、/etc/yum.repos.d/fedora.repoと/etc/yum.repos.d/fedora-updates.repoを以下のように編集しておきます。
# vi /etc/yum.repos.d/fedora.repo
[base]
name=Fedora Core $releasever - $basearch
- Base
#baseurl=http://download.fedora.redhat.com/pub/fedora/linux/core/$releasever/$basearch/os/
#mirrorlist=http://fedora.redhat.com/download/mirrors/fedora-core-$releasever
mirrorlist=file:///etc/yum.repos.d/local-base
enabled=1
gpgcheck=1
# vi /etc/yum.repos.d/fedora-updates.repo
[updates-released]
name=Fedora Core $releasever - $basearch
- Released Updates
#baseurl=http://download.fedora.redhat.com/pub/fedora/linux/core/updates/$releasever/$basearch/
#mirrorlist=http://fedora.redhat.com/download/mirrors/updates-released-fc$releasever
mirrorlist=file:///etc/yum.repos.d/local-updates
enabled=1
gpgcheck=1 |
|
ここまで編集し終えたら通常どおり、yum update と実行してみましょう。