GNU/Linux >> Linux の 問題 >  >> Linux

dnfパッケージグループの操作方法

Dnfは、Fedora、Red Hat Enterprise Linux、およびそのすべてのクローンを含む、RedHatファミリーのディストリビューションのデフォルトの高レベルパッケージマネージャーです。これはYumの後継であり、実際、上記のディストリビューションの最近のバージョンでyumコマンドを使用することは、dnfを呼び出すもう1つの方法です。 Dnfには、「。rpm」形式でパッケージ化されたソフトウェアのインストール、更新、および削除に役立つ多くの優れた機能とプラグインがあります。
このチュートリアルでは、dnfパッケージグループを調べて、それらを処理する方法を学びます。

このチュートリアルでは、学習します

  • パッケージグループとは
  • パッケージグループに関する情報を取得する方法
  • 利用可能なすべてのパッケージグループを一覧表示する方法
  • パッケージグループをインストール、アップグレード、削除する方法

dnfパッケージグループの操作方法

使用されるソフトウェア要件と規則

システム ソフトウェア その他 規約
ソフトウェア要件とLinuxコマンドラインの規則
カテゴリ 使用する要件、規則、またはソフトウェアバージョン
パッケージマネージャーとしてdnfを使用するディストリビューション
dnf
なし
#–指定されたlinux-commandを、rootユーザーとして直接、またはsudoを使用してroot権限で実行する必要があります。 command
$ –指定されたlinux-commandsを通常の非特権ユーザーとして実行する必要があります

パッケージグループとは何ですか?

パッケージグループとは何かを定義することから始めましょう。パッケージグループは、基本的に「仮想」パッケージです。ここでは、特定のソフトウェア自体を提供しないため、これを「仮想」と呼びますが、他の「実際の」パッケージを参照します。
パッケージグループを使用して、1つのコマンドでパッケージの「セット」をインストールできます。たとえば、Fedoraでkvm仮想マシンを操作するために必要なパッケージをインストールする必要があるとします。各パッケージを個別にインストールする代わりに、「仮想化」パッケージグループをインストールするだけで、必要なすべてのソフトウェアがシステムにインストールされます。 。

パッケージグループに関する情報の取得

パッケージグループをインストールする前に、どのパッケージがパッケージグループに取り込まれるかを確認したい場合があります。このタスクを実行するには、dnf group infoを使用するだけです。 コマンド、引数として検査したいパッケージグループの名前を渡します。 @virtualizationが何であるかを確認するには パッケージグループには、たとえば、次のコマンドが含まれます。

$ dnf group info virtualization

Fedora34システムでの上記のコマンドの出力は次のとおりです。

Group: Virtualization
 Description: These packages provide a graphical virtualization environment.
 Mandatory Packages:
   virt-install
 Default Packages:
   libvirt-daemon-config-network
   libvirt-daemon-kvm
   qemu-kvm
   virt-manager
   virt-viewer
 Optional Packages:
   libguestfs-tools
   python3-libguestfs
   virt-top

-vを使用してコマンドを呼び出すことで、コマンドの冗長性を高め、より詳細な情報を受け取ることができます。 (--verboseの略 )オプション:

Group: Virtualization
 Group-Id: virtualization
 Description: These packages provide a graphical virtualization environment.
 Mandatory Packages:
   virt-install-3.2.0-3.fc34.noarch                                                                 @System
 Default Packages:
   libvirt-daemon-config-network-7.0.0-4.fc34.x86_64                                                @System
   libvirt-daemon-kvm-7.0.0-4.fc34.x86_64                                                           @System
   qemu-kvm-2:5.2.0-7.fc34.x86_64                                                                   @System
   virt-manager-3.2.0-3.fc34.noarch                                                                 @System
   virt-viewer-9.0-3.fc34.x86_64                                                                    @System
 Optional Packages:
   libguestfs-tools
   python3-libguestfs-1:1.45.4-1.fc34.x86_64                                                        updates
   virt-top-1.0.9-17.fc34.x86_64                                                                    fedora

出力で最初に気付くのは名前です およびid パッケージグループの、この場合はそれぞれ「仮想化」と「仮想化」。その後、簡単な説明を読むことができます パッケージグループとその目的の
そして最後にそれに含まれるパッケージの実際のリスト。パッケージが3つの主要なセクションに分かれていることがわかります。

  • 必須
  • デフォルト
  • オプション

「必須」および「デフォルト」とマークされたパッケージは、常に 「オプション」とマークされたものは、指定された場合にのみインストールされます。完全を期すために、この場合は使用されない別のセクションが存在することに言及する必要があります:条件付き 。 「条件付き」セクションの一部であるパッケージは、必要なパッケージがすでにインストールされている場合にのみインストールされます。

場合によっては、パッケージグループの一部である一部のパッケージがシステムにすでに存在している可能性があります。 group infoを実行すると -vを使用したコマンド オプションでは、上記で行ったように、グループの一部であり、まだインストールされていないパッケージは、リストで強調表示されるため、簡単に区別できます。これがdnf -v group info virtualizationの出力です virt-viewerの後のコマンド パッケージは単独でインストールされました:

dnf -v group info virtualization コマンド出力

利用可能なすべてのパッケージグループを一覧表示する

ディストリビューションのリポジトリで使用可能なすべてのパッケージグループを一覧表示するには、次のコマンドを実行するだけです。

$ dnf group list

上記のコマンドは、すべての既知のグループのリストを返します。ただし、一連のオプションを追加して、その動作を変更することはできます。デフォルトでは、いわゆる非表示グループ リストには含まれていません。
必要なのは、--hiddenを追加することだけです。 オプション:

$ dnf group list --hidden

インストール済みのすべてのリストのみを取得したい場合 パッケージグループの代わりに、--installedを使用できます オプション:

$ dnf group list --installed

パッケージグループのインストール、アップグレード、削除

では、どうすればパッケージグループをインストールできますか?主に2つの方法があります。@のプレフィックスが付いたパッケージの名前を指定できます。 シンボル、またはdnf group installを使用します すでに見たように、コマンド。以下のコマンドは同等です:

$ sudo dnf install @virtualization
$ sudo dnf group install virtualization

すでに述べたように、デフォルトでは「必須」パッケージと「デフォルト」パッケージのみがインストールされます。ただし、このデフォルトの動作は、group_package_typesを使用して変更できます。 コマンドラインまたはdnf
構成ファイルのいずれかからのdnfオプション。例を見てみましょう。パッケージグループの「必須」セクションの一部であるパッケージのみをインストールする場合、次のコマンドを実行できます。

$ sudo dnf --setopt=group_package_types="mandatory" group install Virtualization

コマンドを実行するたびにオプションを指定したくない場合は、dnf構成ファイル/etc/dnf/dnf.confで永続的に設定できます。 :

[main]
# Install only Mandatory packages from package groups
group_package_types=mandatory

パッケージグループの「オプション」セクションに含まれるパッケージだけを含める場合は、--with-optionalを追加することもできます。 パッケージグループをインストールするときのコマンドラインフラグ:

$ sudo dnf group install --with-optional virtualization

アップグレードする機会もあります パッケージグループ。そうすると、グループの一部であるすべてのパッケージがパッケージグループ自体と一緒にアップグレードされます。これにより、新しいパッケージがグループに追加されている場合はインストールされ、削除されていない場合は削除される可能性があります。グループの一部であり、ユーザーによって明示的にインストールされていません。パッケージグループをアップグレードするには、group upgradeを使用します コマンドなので、たとえば、
実行する「仮想化」パッケージをアップグレードするには、次のようにします。

$ sudo dnf group upgrade virtualization

Dnfは、削除するコマンドも提供します インストールされたパッケージグループ:group remove 。このコマンドはすべてを削除します 別のパッケージグループの一部であるパッケージ、またはユーザーによって明示的にインストールされたパッケージを除く、オペレーティングシステムのグループの一部であるパッケージ。 「仮想化」パッケージグループを削除するには、次のコマンドを実行します。

$ sudo dnf group remove virtualization

結論

このチュートリアルでは、パッケージグループについて学習しました。 FedoraやRhelなどのパッケージマネージャーとしてdnfを使用するディストリビューションで特定のパッケージグループに関する情報を取得する方法、パッケージグループのメンバーであるパッケージがセクションに分割される方法(デフォルトでインストールされるもの)、およびこの動作を変更する方法
。最後に、パッケージグループをインストール、アップグレード、および削除する方法を学びました。


Linux
  1. VimをTmuxで適切に動作させる方法は?

  2. AwkまたはGrepでグループをキャプチャしますか?

  3. CentOS/RHEL で同じ名前の 2 つのボリューム グループをアクティブ化してマウントする方法

  1. PHP-FPMを介してPHPで動作するようにNginxを構成する方法

  2. Linuxのグループにユーザーを追加する方法(例を含む)

  3. Kerberos は SSH とどのように連携しますか?

  1. dnfを使用したLinuxパッケージ管理

  2. Linuxでユーザーとグループを操作する方法

  3. 他のパッケージが依存していない DNF を持つすべてのパッケージを削除する方法