yumについて
yumを使ったパッケージのインストールは、パッケージ間の依存関係を自動的に解決してくれるため、非常に簡単に行えます
yumの使い方
yumの使い方は基本的には下記の通りとなります。
※オプションとパッケージ名については指定しない場合もあります。
yum [オプション] [コマンド] [パッケージ名]
オプション
全てのオプションを説明すると非常に膨大な数になるため、普段使用しそうなものを抜粋して説明します。
オプション | 説明 |
---|---|
-y | パッケージのインストール・アップデート・アンインストールを時の実行確認の問い合わせに「y」と入力したことになる |
-c 設定ファイル | 設定ファイルを指定する場合に使用 指定しない場合は「/etc/yum.conf」を使用 |
-q | 実行状況を表示させない 全ての表示をなくすためには「-y」オプションと一緒に使用する必要がある |
-v | 実行内容の詳細情報を表示 |
-R 時間(分) | タイムアウトの設定を分単位で設定する |
コマンドについては使い方ごとに説明していきます。
yumコマンドの使い方
yumのコマンドで普段使用しそうなものを説明していきます。
パッケージのインストール(install)
パッケージは「install」の後にパッケージ名を指定することで、インストールすることができます。
# yum install パッケージ名
インストール時に確認される「Is this ok [y/d/N]:」は「-y」オプションを指定することで、「y」を入力したことにすることができます。
複数パッケージを一度に指定
パッケージのインストールは下記のように複数指定することも可能です。
# yum install パッケージ名1 パッケージ名2 パッケージ名3
ワイルドカード(*)を使用してパッケージを指定することもできます。
# yum install パッケージ名*
パッケージのアンインストール(remove)
パッケージをアンインストールしたい場合は「remove」を使用することで、指定したパッケージをアンインストールすることができます。(「erase」でもアンインストールできます)
# yum remove パッケージ名
インストールと同様に複数パッケージを指定することができます。
パッケージの再インストール(reinstall)
何らかの理由でパッケージの再インストールを行いたい場合は「reinstall」を使用することで、指定したパッケージを再インストールすることができます。
# yum reinstall パッケージ名
インストール可能なパッケージの一覧表示(list)
パッケージ名を指定しない場合は、インストール可能なすべてのパッケージ名が表示されます。
パッケージを指定した場合は、そのパッケージについての情報が表示されます。
# yum list # yum list パッケージ名
パッケージ名にはワイルドカード(*)の指定もでき、その場合はマッチするすべてのパッケージが表示されます。
# yum list httpd* 読み込んだプラグイン:fastestmirror Loading mirror speeds from cached hostfile * base: ftp.nara.wide.ad.jp * extras: ftp.nara.wide.ad.jp * remi-safe: mirror.innosol.asia * updates: ftp.nara.wide.ad.jp インストール済みパッケージ httpd.x86_64 2.4.6-40.el7.centos.4 @updates httpd-tools.x86_64 2.4.6-40.el7.centos.4 @updates 利用可能なパッケージ httpd-devel.x86_64 2.4.6-40.el7.centos.4 updates httpd-manual.noarch 2.4.6-40.el7.centos.4 updates
インストール済みパッケージの確認
「yum」でインストールされたパッケージの一覧を表示させたい場合は「list installed」を使用します。
# yum list installed
重複パッケージの表示(--showduplicates)
インストール可能なパッケージで複数バージョンがある場合、複数バージョンすべてを表示されます。
パッケージ名を指定しなかった場合は、すべてのパッケージについて表示されます。
# yum --showduplicates list # yum --showduplicates list パッケージ名
httpdについて確認した例です。
# yum --showduplicates list httpd 読み込んだプラグイン:fastestmirror Loading mirror speeds from cached hostfile * base: ftp.nara.wide.ad.jp * extras: ftp.nara.wide.ad.jp * remi-safe: mirror.innosol.asia * updates: ftp.nara.wide.ad.jp インストール済みパッケージ httpd.x86_64 2.4.6-40.el7.centos.4 @updates 利用可能なパッケージ httpd.x86_64 2.4.6-40.el7.centos base httpd.x86_64 2.4.6-40.el7.centos.1 updates httpd.x86_64 2.4.6-40.el7.centos.4 updates
「利用可能なパッケージ」には3種類のバージョンが表示されていて、現在インストールされている以外にも使用できるバージョンのパッケージがあることが確認できます。
パッケージのアップデート確認(check-update)
パッケージを指定せずに実行すると、すべてのパッケージについてアップデートがあるか確認します。
# yum check-update # yum check-update パッケージ名
パッケージのアップデート(update)
パッケージを指定せずに実行すると、すべてのパッケージをアップデートします。
# yum update # yum update パッケージ名
アップデートから除外するパッケージを指定
アップデートしたくないパッケージがある場合は「--exclude=パッケージ名」で、アップデート対象から除外することができます。
# yum --exclude=パッケージ名 update
パッケージ名はワイルドカード(*)指定もできます。
セキュリティ関連の更新
パッケージ更新の際に「--security」オプションを指定することで、セキュリティ関連のアップデートのみを対象として、アップデートの確認やパッケージのアップデートすることができます。
セキュリティアップデートのチェック
# yum --security check-update
セキュリティアップデートのみ更新
# yum --security update
セキュリティ関連のみを対象とすることで、パッケージ最新化による不具合発生のリスクを低減させることが出来ます。
このオプションを使用する場合「CentOS 6」では「yum-plugin-security」を別途インストールする必要があります。
# yum install yum-plugin-security
パッケージのダウングレード(downgrade)
バージョンの指定をしない場合は、ひとつ前のバージョンにダウングレードします。
# yum downgrade パッケージ名
ダウングレードを実施する前に「yum --showduplicates list パッケージ名」を実施し、古いバージョンのパッケージの情報を取得します。
今回は「screen」というパッケージを例として、ダウングレードを行っていきます。
# yum --showduplicates list screen 読み込んだプラグイン:fastestmirror Loading mirror speeds from cached hostfile * base: ftp.nara.wide.ad.jp * extras: ftp.nara.wide.ad.jp * remi-safe: mirror.innosol.asia * updates: ftp.nara.wide.ad.jp インストール済みパッケージ screen.x86_64 4.1.0-0.23.20120314git3c2946.el7_2 @updates 利用可能なパッケージ screen.x86_64 4.1.0-0.21.20120314git3c2946.el7 base screen.x86_64 4.1.0-0.23.20120314git3c2946.el7_2 updates
「base」リポジトリにインストールされているバージョンより前のパッケージがあったので、そのバージョンにダウングレードします。
# yum downgrade screen-4.1.0-0.21.20120314git3c2946.el7 読み込んだプラグイン:fastestmirror Loading mirror speeds from cached hostfile * base: ftp.nara.wide.ad.jp * extras: ftp.nara.wide.ad.jp * remi-safe: mirror.innosol.asia * updates: ftp.nara.wide.ad.jp 依存性の解決をしています --> トランザクションの確認を実行しています。 ---> パッケージ screen.x86_64 0:4.1.0-0.21.20120314git3c2946.el7 を ダウングレード ---> パッケージ screen.x86_64 0:4.1.0-0.23.20120314git3c2946.el7_2 を 削除 --> 依存性解決を終了しました。 依存性を解決しました ============================================================================================================================= Package アーキテクチャー バージョン リポジトリー 容量 ============================================================================================================================== ダウングレード中: screen x86_64 4.1.0-0.21.20120314git3c2946.el7 base 551 k トランザクションの要約 ============================================================================================================================= ダウングレード 1 パッケージ 総ダウンロード容量: 551 k Is this ok [y/d/N]: y Downloading packages: screen-4.1.0-0.21.20120314git3c2946.el7.x86_64.rpm | 551 kB 00:00:00 Running transaction check Running transaction test Transaction test succeeded Running transaction インストール中 : screen-4.1.0-0.21.20120314git3c2946.el7.x86_64 1/2 整理中 : screen-4.1.0-0.23.20120314git3c2946.el7_2.x86_64 2/2 検証中 : screen-4.1.0-0.21.20120314git3c2946.el7.x86_64 1/2 検証中 : screen-4.1.0-0.23.20120314git3c2946.el7_2.x86_64 2/2 削除しました: screen.x86_64 0:4.1.0-0.23.20120314git3c2946.el7_2 インストール: screen.x86_64 0:4.1.0-0.21.20120314git3c2946.el7 完了しました!
パッケージグループの一覧表示(grouplist)
パッケージグループの一覧を表示させたい場合は「grouplist」を使用します。
# yum grouplist
実際に実行してみると、下記のようにパッケージグループが表示されます。
# yum grouplist Loaded plugins: fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: ftp.iij.ad.jp * epel: ftp.yz.yamagata-u.ac.jp * epel-debuginfo: ftp.yz.yamagata-u.ac.jp * epel-source: ftp.yz.yamagata-u.ac.jp * extras: ftp.iij.ad.jp * updates: ftp.iij.ad.jp Available Environment Groups: Minimal Install Compute Node Infrastructure Server File and Print Server MATE Desktop Basic Web Server Virtualization Host Server with GUI GNOME Desktop KDE Plasma Workspaces Development and Creative Workstation Available Groups: CIFS file server Compatibility Libraries Console Internet Tools Desktop Desktop Platform Desktop Platform Development Development Tools Eclipse Educational Software Electronic Lab FCoE Storage Client Fedora Packager General Purpose Desktop Graphical Administration Tools Haskell Legacy UNIX Compatibility Messaging Client Support Messaging Server Support Milkymist MySQL Database client MySQL Database server NFS file server Network Storage Server SNMP Support Scientific Support Security Tools Server Platform Server Platform Development Smart Card Support Storage Availability Tools System Administration Tools System Management TeX support TurboGears application framework Virtualization Web-Based Enterprise Management Xfce iSCSI Storage Client Done
パッケージグループのインストール(groupinstall)
# yum groupinstall パッケージグループ名
パッケージグループのアンイストール(groupremove)
# yum groupremove パッケージ名
パッケージ情報の確認(info)
# yum info パッケージ名
パッケージ名を指定せずに実行すると、すべてのパッケージ情報が表示されてしまいますので注意してください。
表示例
# yum info wget 読み込んだプラグイン:fastestmirror Determining fastest mirrors * base: ftp.iij.ad.jp * extras: ftp.iij.ad.jp * remi-safe: mirror.innosol.asia * updates: ftp.jaist.ac.jp 利用可能なパッケージ 名前 : wget アーキテクチャー : x86_64 バージョン : 1.14 リリース : 10.el7_0.1 容量 : 545 k リポジトリー : base/7/x86_64 要約 : A utility for retrieving files using the HTTP or FTP : protocols URL : http://www.gnu.org/software/wget/ ライセンス : GPLv3+ 説明 : GNU Wget is a file retrieval utility which can use either : the HTTP or FTP protocols. Wget features include the : ability to work in the background while you are logged : out, recursive retrieval of directories, file name : wildcard matching, remote file timestamp storage and : comparison, use of Rest with FTP servers and Range with : HTTP servers to retrieve files over slow or unstable : connections, support for Proxy servers, and : configurability.
パッケージの検索(search)
正確なパッケージ名が分からない場合などは、関連するキーワードからパッケージの検索を行うことができます。
# yum search パッケージ名
コメント