yum – RPM系ディストリでパッケージを検索・更新・インストールする

検索・探索

yum は Red Hat 系(RHEL/CentOS 7 など)で使われるパッケージ管理コマンドです。依存関係を自動解決し、検索・情報表示・更新・インストール/削除を一貫して行えます。(docs.redhat.com)
RHEL 8+ では内部実装が DNF(YUM v4)に置き換わっており、yum は互換のエイリアス/シンボリックリンクとして動作します。既存の yum サブコマンドはそのまま利用できます。(docs.redhat.com)

構文(Syntax)

yum [GLOBAL_OPTIONS] COMMAND [ARGS]

# 代表的なコマンド
yum search KEYWORD                 # パッケージ検索
yum info PKG                       # パッケージ情報
yum list [installed|available|updates]  # 一覧
yum provides PATH|GLOB             # どのパッケージがファイルを提供するか
yum install PKG...                 # インストール
yum update [PKG...]                # 更新(RHEL7では upgrade 同義)
yum remove|erase PKG...            # 削除
yum history [list|info|undo N]     # 取引履歴と巻き戻し
yum clean all|metadata|packages    # キャッシュ削除
yum makecache                      # メタデータを先読み
yum repolist [all|enabled]         # リポジトリ一覧

yum providesyum historyyum clean などの主要サブコマンドは公式チートシートやドキュメントにまとまっています。)(Red Hat Customer Portal, yum.baseurl.org)

主なオプション一覧

オプション説明使用例
-y, --assumeyesすべての質問に自動で Yessudo yum -y update
-q, --quiet出力を減らすyum -q repolist
-v冗長出力yum -v info nginx
--enablerepo=REPO一時的にリポジトリを有効化sudo yum --enablerepo=epel install htop
--disablerepo=REPO一時的に無効化sudo yum --disablerepo=extras update
--exclude=PATTERN対象から除外sudo yum --exclude=kernel* update
--setopt=KEY=VAL設定を一時上書きsudo yum --setopt=timeout=30 update
--showduplicates候補の重複(複数バージョン)も表示yum --showduplicates list openssl
--nogpgcheckGPG 検証を無効化(推奨されない)sudo yum --nogpgcheck localinstall pkg.rpm

リポジトリや設定は /etc/yum.conf/etc/yum.repos.d/*.repo で管理します。(docs.redhat.com)

実行例

パッケージを検索してからインストール

説明: ripgrep を検索し、情報確認後に導入します。
コマンド:

yum search ripgrep
yum info ripgrep
sudo yum install ripgrep

提供元を調べる(ファイル → パッケージ逆引き)

説明: あるファイルを提供するパッケージを調べます。
コマンド:

yum provides "*/bin/vim"

(ワイルドカード可)(yum.baseurl.org)

一時的に EPEL を有効にして入れる

説明: 永続設定を変えず、指定コマンドの間だけリポジトリを有効化します。
コマンド:

sudo yum --enablerepo=epel install htop

履歴から直前の更新を巻き戻す

説明: 取引番号を確認し、その更新を取り消します。
コマンド:

yum history list
sudo yum history info 23
sudo yum history undo 23

history の操作はチートシートにもまとまっています。)(Red Hat Customer Portal)

キャッシュを掃除してメタデータを再取得

説明: 破損時やミラー切替後に有用です。
コマンド:

sudo yum clean all
sudo yum makecache

エラー例:権限不足でインストール

説明: sudo なしでインストールすると失敗します。
コマンド:

yum install htop

出力例(例):

You need to be root to perform this command.

関連コマンド

  • dnf : RHEL 8+ の実装(YUM v4)。yum は互換コマンドとして DNF を呼び出します。(docs.redhat.com)
  • rpm : 低レベル操作(個別 .rpm のインストール/照会/検証など)。
  • yum-config-manager : リポジトリの有効/無効化や追加を行う補助ツール(yum-utils)。(man7.org)

備考

  • 設定ファイル: 全体設定は /etc/yum.conf、リポジトリは /etc/yum.repos.d/*.repo に分離するのが推奨です。(docs.redhat.com)
  • RHEL 8+ の互換性: RHEL 8 では YUM v4(DNFベース)を「yum という名前」で提供。dnf でも同じように動作します。(docs.redhat.com)
  • プラグイン: 環境によっては yum-utils などの追加ツールが必要です(例: yum-config-manager)。(man7.org)

参考

  • manページ(yum(8)): man7.org(Linux manual pages)。(man7.org)
  • Red Hat ドキュメント(RHEL7: Yum の基本): System Administrator’s Guide。(docs.redhat.com)
  • Red Hat ドキュメント(RHEL8: YUM/DNF と互換性の説明): Considerations in adopting RHEL 8。(docs.redhat.com)
  • yum-config-manager(1)yum-utils の一部): man7.org。(man7.org)
  • YUM コマンド一覧/チートシート(Red Hat Customer Portal): (Red Hat Customer Portal)
  • 追加の基本コマンド集(yum.baseurl.org Wiki): (yum.baseurl.org)
Bash玄

はじめまして!Bash玄です。

エンジニアとしてシステム運用に携わる中で、手作業の多さに限界を感じ、Bashスクリプトを活用して業務を効率化したのがきっかけで、この道に入りました。「手作業は負け」「スクリプトはシンプルに」をモットーに、誰でも実践できるBashスクリプトの書き方を発信しています。

このサイトでは、Bashの基礎から実践的なスクリプト作成まで、初心者でもわかりやすく解説しています。少しでも「Bashって便利だな」と思ってもらえたら嬉しいです!

# 好きなこと
- シンプルなコードを書くこと
- コマンドラインを快適にカスタマイズすること
- 自動化で時間を生み出すこと

# このサイトを読んでほしい人
- Bashに興味があるけど、何から始めればいいかわからない人
- 定型業務を自動化したい人
- 効率よくターミナルを使いこなしたい人

Bashの世界に一歩踏み出して、一緒に「Bash道」を極めていきましょう!

Bash玄をフォローする

コメント