Linux システム上のすべてのソフトウェアは、インストール、アンインストール、アップグレード、クエリ、および検証が可能なパッケージに分割されています。 CentOS/RHEL システムは Red Hat Package Manager (RPM) を使用します ソフトウェア パッケージのインストール、アップグレード、および削除を容易にするため。
CentOS/RHEL は yum(Yellowdog Updater, Modified) も提供します RPM パッケージで動作するユーティリティ。 yum がソフトウェア パッケージをインストールまたはアップグレードすると、パッケージの依存関係もインストールまたはアップグレードされます。 yum ユーティリティは、リポジトリからパッケージ ヘッダーとパッケージをダウンロードします。リポジトリは、ソフトウェア パッケージを取得してインストールできるストレージの場所です。
Yum 構成ファイル
yum の主な構成ファイルは /etc/yum.conf です .リポジトリを定義する構成ファイルは /etc/yum.repos.d にあります ディレクトリ。 /etc/yum.conf の例は次のとおりです:
# cat /etc/yum.conf [main] cachedir=/var/cache/yum/$basearch/$releasever keepcache=0 debuglevel=2 logfile=/var/log/yum.log exactarch=1 obsoletes=1 gpgcheck=1 plugins=1 installonly_limit=3
グローバル構成は [main] セクションで定義されます:
パラメータ | 目的 |
---|---|
キャッシュディレクトリ | ダウンロードしたパッケージを保存するディレクトリ |
keepcache | インストール後にパッケージを削除することを示すには、0 に設定します。 |
デバッグレベル | 記録された情報の量、0 から 10 まで |
ログファイル | yum ログ ファイル |
exactarch | 1 に設定すると、yum は同じアーキテクチャのパッケージのみでパッケージを更新します。 |
廃止 | 1 に設定すると、yum は更新中に廃止されたパッケージを置き換えます。 |
gpgcheck | 1 に設定すると、yum は GPG 署名をチェックしてパッケージの信頼性を検証します。 gpgkey ディレクティブは、GPG キーの場所を指定します。 |
プラグイン | 1 に設定すると、機能を拡張する yum プラグインが有効になります。 |
installonly_limit | 1 つのパッケージに対して同時にインストールできるバージョンの最大数 |
yum リポジトリ
Linux は、各リポジトリに関する情報を /etc/yum.repos.d の個別のファイルに保存します。 ディレクトリ。以下に例を示します:
# ls -lrt /etc/yum.repos.d total 20 -rw-r--r-- 1 root root 733 Jul 27 18:09 rhel7.2.repo -rw-r--r-- 1 root root 358 Nov 5 14:00 rhel7.3.repo
リポジトリ ファイルは、使用するリポジトリを定義します。各リポジトリ ファイルには、関連するいくつかのリポジトリの仕様が含まれています。たとえば、
[epel] name=Extra Packages for Enterprise Linux 7 - $basearch baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
リポジトリ ファイル内のディレクティブには次が含まれます:
ディレクティブ | 目的 |
---|---|
名前 | リポジトリについて説明します |
baseurl | メイン リポジトリの場所 (http://、ftp://、または file://) です |
有効 | 1 に設定すると、yum はリポジトリを使用します。 0 に設定すると、リポジトリは無効になります。 |
yum リポジトリーは、インターネット経由だけでなく、ローカルでアクセスすることもできます。ローカル yum リポジトリは、createrepo を使用して作成されます コマンドを実行し、baseurl をローカル ディレクトリに設定します。
CentOS / RHEL 6 :ローカルにマウントされた DVD を使用して yum リポジトリをセットアップする方法CentOS / RHEL 7 :ローカルにマウントされた DVD を使用して yum リポジトリをセットアップする方法
CentOS / RHEL :httpd を介して yum リポジトリを作成およびホストする方法
多くの場合、yum ユーティリティは、パッケージ管理タスクを実行する最速の方法です。これは、rpm やグラフィカル パッケージ管理ツールによって提供される機能を超える機能を提供します。多くの yum コマンドがありますが、以下に一般的なタスクの例を示します。
パッケージのリスト
システムで有効になっている、またはインストールされているリポジトリのパッケージを一覧表示する yum コマンドがいくつかあります。特定のタイプのパッケージをリストするだけでなく、パッケージの名前、アーキテクチャ、バージョン、またはリリースのパッケージ仕様でリストを絞り込むことができます。
すべてのリポジトリ内のすべてのパッケージと、システムにインストールされているすべてのパッケージを一覧表示するには、次のコマンドを使用します:
# yum list
システムにインストールされているすべてのパッケージを一覧表示するには、次のコマンドを使用します:
# yum list installed
システム上の有効なリポジトリにインストールできるすべてのパッケージを一覧表示するには、次のコマンドを使用します:
# yum list available
次の例では、ファイル (/etc/sysconfig/atd など) が属するパッケージの名前を検索します:
# yum provides /etc/sysconfig/atd at-3.1.13-17.el7.x86_64 : Job spooling tools ...
更新を確認しています
システムにインストールされているどのパッケージにアップデートが利用できるかを確認するには、次のコマンドを使用します:
# yum check-update
パッケージ名とアーキテクチャ、更新されたパッケージのバージョン、およびリポジトリ (または
ULN チャネル) が表示されます。 yum list update を入力すると、同じ出力が返されます。
パッケージの更新
1 つのパッケージ、複数のパッケージ、またはすべてのパッケージを一度に更新することを選択できます。パッケージ (または複数のパッケージ) の依存関係に利用可能な更新がある場合、それらも更新されます。
単一パッケージの更新
1 つのパッケージを更新するには、次のコマンド構文を使用します:
# yum update package_name
たとえば、bind-libs パッケージを更新するには、次のように入力します:
# yum update bind-libs
yum は依存関係をチェックし、解決された依存関係とトランザクションの概要を表示し、「Is this ok [y/N]」とプロンプトを表示します 「、応答を待ってから、パッケージと必要な依存パッケージをダウンロードしてインストールします。 yum -y を使用 プロンプトをバイパスします。
すべてのパッケージを更新しています
すべてのパッケージとその依存関係を更新するには、yum update と入力します (引数なし):
# yum update
パッケージのインストール
パッケージの依存関係と一緒に新しいパッケージをインストールするには、次の構文を使用します:
# yum install package_name
たとえば、zsh パッケージをインストールするには、次のように入力します。
# yum install zsh
カーネルの更新とインストール
yum を使用する場合、カーネル パッケージのインストールとアップグレードの違いについて心配する必要はありません。 yum update または yum install のどちらを使用しているかに関係なく、yum は常に新しいカーネルをインストールします。
パッケージの削除
パッケージを削除するには、次の構文を使用します:
# yum remove package_name
たとえば、zsh パッケージを削除するには、次のように入力します。
# yum remove zshyum トランザクションを表示、ロールバック、やり直し、元に戻す「yum history」コマンドの例
CentOS / RHEL :yum-cron サービスを使用して yum 自動更新を構成する