miyabihitoの日記

個人的な技術メモ

YUM

概要

Yellowdog Updater Modified の略
Yellow Dog Linuxのために開発されたもの(YUP)が起源で、
RHELFedora,CentOSの標準のパッケージ管理システムとなっている。

操作

  • 更新の確認
    • yum check-update
  • 更新
  • 検索
    • yum search term: 指定された語に関連するパッケージを検索する
    • yum list (option) (glob)
      • all: すべてのパッケージの一覧表示(allなしと同じ)
      • installed: インストール済みパッケージの一覧表示
      • available: 利用可能なパッケージの一覧表示
    • yum provides file_name: 指定ファイルを含むパッケージの表示
  • グループ
    • yum grouplist: パッケージグループの一覧 -v : グループ名とグループIDの表示
    • yum groupinstall group_id: パッケージグループのインストール
    • yum groupremove group_id: パッケージグループのアンインストール
  • リポジトリ
  • パッケージ情報
    • yum info glob: パッケージ情報の表示
  • インストール
    • yum install : パッケージのインストール(@groupidで、パッケージグループのインストール実行)
  • アンインストール
    • yum remove: パッケージのアンインストール(削除対象に依存するパッケージも削除される)
  • トランザクション履歴: /var/lib/yum/history/にあるsqliteのデータベースファイルに格納されている
    • yum history
      • list: 一覧表示(all, start_id..end_id, package-glob)
      • summary: サマリー表示
      • package-list (package-glob): パッケージ履歴表示
      • info id: 詳細表示(start_id..end_id)
      • addon-info: 追加情報
      • undo id: トランザクションの取り消し
      • redo id: トランザクションの再実施
      • new: トランザクション履歴の新規作成・開始
  • トランザクションの実行
  • キャッシュの削除
    • yum clean: /var/cache/yum以下の各種キャッシュの削除
      • all: すべてのキャッシュファイルの削除(定期的に行うとよい)

関連コマンド

  • yumdb

    • info package_name: パッケージに関する情報(明示or依存によるインストールか分かる)
  • yum-config-manager

    yumの現在の設定の閲覧(設定ファイルの内容)
    引数にセクション(リポジトリID)を指定する事も可能

    • --add-repo repository_url

      リポジトリの追加を実行する。
      引数には、追加リポジトリの.repoファイルを指定する。

    • --enable repo_id

    • --disable repo_id

      リポジトリの有効化・無効化
      引数には、グロブ表現を指定可能

設定

/etc/yum.conf

[main]セクションには、yumの動作全体に影響を与えるオプションの設定を記述
キャッシュディレクトリやログ出力先の指定等がなされている
また、[repo_name]セクションで、リポジトリ固有の設定も記述できる。
(repo_nameは、一意となるリポジトリIDを割り当てる)

/etc/yum.repos.d

個々のリポジトリの定義ファイルを配置するディレクトリ
ファイル拡張子は、「.repo」
/etc/yum.confのリポジトリセクションと同等

YUM変数

YUMの設定ファイルで使用する事の出来る変数。
いくつかの組み込み変数が存在する。
新規にYUM変数を定義する場合や、既存のYUM変数値を上書きたい場合は、下記のファイルを作成する。

  • ファイル作成先ディレクトリ

    /etc/yum/vars/

  • ファイル名

    変数名($は除く)

  • 内容

    ファイルの1行目に、変数値を記述