GNU/Linux >> Linux の 問題 >  >> Cent OS

CentOS/RHEL:YUM を使用してファイルが欠落しているパッケージを見つける方法

質問 :YUM を使用してシステム内のファイルが見つからないパッケージを見つける方法は?このハウツーは、ファイルが欠落しておらず、既にインストールされている場合にも適用できますが、何らかの理由で、ファイルを提供するパッケージを知る必要があります。

YUM パッケージ マネージャー ツールは、リポジトリを使用して情報を取得し、パッケージをダウンロードします。リポジトリの設定は /etc/yum.repos.d/*.repo にあります これらのファイルでは、複数のリポジトリを有効にし、他のリポジトリを無効にすることができます。

1. 使用するサブコマンドは「provides」です。たとえば、/usr/src/kernels/4.1.12-124.18.6.el7uek.x86_64 ファイルを探します:

# yum provides /usr/src/kernels/4.1.12-124.18.6.el7uek.x86_64

これにより、システムにインストールする必要があるリポジトリとパッケージが表示されます。

2. ただし、パッケージを含むリポジトリが無効になっているため、コマンドでパッケージが見つからない場合があります:

No Matches found

その場合、すべてのリポジトリまたは 1 つのリポジトリだけを検索できるようにすることを試みることができます。そのためには、オプション –enablerepo を使用する必要があります .たとえば、.repo ファイルで構成されたすべてのリポジトリを使用して、有効化および無効化します。

# yum provides /usr/src/kernels/4.1.12-124.18.6.el7uek.x86_64 --enablerepo=*

または特定のレポ:

# yum provides /usr/src/kernels/4.1.12-124.18.6.el7uek.x86_64 --enablerepo=ol7_UEKR4_archive

または正規表現に一致する複数のもの

# yum provides /usr/src/kernels/4.1.12-124.18.6.el7uek.x86_64 --enablerepo=ol7_*_archive

サンプル出力:

kernel-uek-devel-4.1.12-124.18.6.el7uek.x86_64 : Development package for building kernel modules to match the kernel
Repo        : ol7_UEKR4_archive
Matched from:
Filename    : /usr/src/kernels/4.1.12-124.18.6.el7uek.x86_64

3. 最終的な目標がパッケージのインストールであり、オプション –enablerepo を使用してのみ可能だった場合は、同じオプションを使用してパッケージをインストールします:

# yum install kernel-uek-devel-4.1.12-124.18.6.el7uek.x86_64 --enablerepo=ol7_UEKR4_archive

パスの場所が不明なファイルを探す場合は、ワイルドカードを含むファイル パスを使用できます:

# yum provides */fileX


Cent OS
  1. RedHat / CentOS / Fedoraで実行可能ファイルまたはファイルが属するパッケージを見つける方法は?

  2. CentOS / RHEL 7 :firewall-cmd を使用してファイアウォールでポートを開く方法は?

  3. CentOS / RHEL 6 :yum を使用してセキュリティ更新のみを一覧表示またはインストールする方法

  1. CentOS / RHEL で YUM キャッシュを消去する方法

  2. CentOS / RHEL 7 :カーネル コマンド ラインを変更する方法

  3. CentOS/RHEL で yum リポジトリを作成する方法

  1. CentOS/RHEL で元のインストール OS バージョンを確認する方法

  2. CentOS/RHEL 7 および 8 に pip パッケージをインストールする方法

  3. CentOS/RHEL 8 で dnf を使用してパッケージをインストールする方法