Fedora 36以上

Fedora 36以上

特定のリポジトリ(「epel」など)で、システムにインストールされているすべてのRPMパッケージのリストをどのように取得できますか?

答え1

Fedora 36以上

dnf repository-packages epel list

CentOS/RHEL/Fedora 22以下

yum list installed | grep @epel

Fedora 23

dnf list installed | grep @epel

RHEL8

dnf repo-pkgs epel list installed

答え2

提案されているようにRHEL6で始まるこのstackoverflowの答え、これを行うより徹底的な方法がありますyumdb

yumdb search from_repo REPOID*

Repidにはワイルドカード文字が必要です。

正確な印刷

出力をだましてパイプすると、きれいな印刷も得られます。これは用途ですawk

yumdb search from_repo REPOID* |awk -F"\n" '{ RS=""; print $1 }'

使用egrepするgrep -e

yumdb search from_repo REPOID* |egrep -v '(from_repo|^$)'

list_ALL_AVAILABLE_from_repo

リストみんな書くことができるバッグ指定されたリポジトリで次の操作を行います。

repoquery -a --repoid=REPONAME

答え3

dnf repo-pkgs <repoid> list installed

ノート

上記のコマンドは以下を使用します。DNFのエイリアスのみを<repoid>リストします。repo-pkgsrepository-packages

manページから:

man dnf | grep "repository-packages.*list.*installed" -A 1

追加資料:

man dnf

答え4

RHELサーバー7.5(マイポー)

yum repo-pkgs <repoid> list installedと同じ情報を取得するために使用できますが、yumdb search from_repo <repoid>形式は異なります。

# yum help repo-pkgs
repo-pkgs <repoid> <list|info|install|remove|upgrade|reinstall*|remove-or-*> [pkg(s)]

Treat a repo. as a group of packages, so we can install/remove all of them

aliases: repo-packages, repository-pkgs, repository-packages

出力例epel:

# yumdb search from_repo epel
htop-2.2.0-1.el7.x86_64
    from_repo = epel

supervisor-3.1.4-1.el7.noarch
    from_repo = epel


# yum repo-pkgs epel list installed
Installed Packages
htop.x86_64            2.2.0-1.el7          @epel
supervisor.noarch      3.1.4-1.el7          @epel

関連情報