dnfコマンドでパッケージをモジュール単位でインストールする!

dnfコマンドでパッケージをモジュール単位でインストールします。

動作確認した環境を確認する!

動作確認した環境を確認します。

# hostnamectl
   Static hostname: vmsrhe11.loc.lab4ict.com
         Icon name: computer-vm
           Chassis: vm
        Machine ID: 1b376bee9ce244d2a1ede743dadfd4a5
           Boot ID: 3b1bbe07261e45dea79c7ed1f0dc0b88
    Virtualization: oracle
  Operating System: Red Hat Enterprise Linux 8.6 (Ootpa)
       CPE OS Name: cpe:/o:redhat:enterprise_linux:8::baseos
            Kernel: Linux 4.18.0-372.9.1.el8.x86_64
      Architecture: x86-64

利用可能なパッケージのモジュールを確認する!

利用可能なパッケージのモジュールを確認します。

# dnf module list
Updating Subscription Management repositories.
Last metadata expiration check: 23:56:47 ago on Thu 24 Aug 2023 06:59:13 AM JST.
Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)
Name                 Stream          Profiles Summary                                                                   
389-ds               1.4                      389 Directory Server (base)                                               
...
virt                 rhel [d]        common [ Virtualization module                                                     
                                     d]       

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

利用可能なパッケージのモジュールを指定する!

利用可能なパッケージのモジュールを指定して、利用可能なバージョンを確認します。例として、PostgreSQLを指定します。

# dnf module list postgresql
Updating Subscription Management repositories.
Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs)                                   586  B/s | 4.1 kB     00:07    
Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)                                703  B/s | 4.5 kB     00:06    
Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)                                3.8 MB/s |  59 MB     00:15    
Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)
Name                   Stream             Profiles                       Summary                                        
postgresql             9.6                client, server [d]             PostgreSQL server and client module            
postgresql             10 [d]             client, server [d]             PostgreSQL server and client module            
postgresql             12                 client, server [d]             PostgreSQL server and client module            
postgresql             13                 client, server [d]             PostgreSQL server and client module            
postgresql             15                 client, server [d]             PostgreSQL server and client module            

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

バージョンを指定してパッケージをモジュール単位でインストールする!

パッケージをグループ単位でインストールします。例として、PostgreSQLのバージョン12をインストールします。

# dnf module install postgresql:12 -y
...
# dnf module list postgresql
Updating Subscription Management repositories.
Last metadata expiration check: 0:00:34 ago on Fri 25 Aug 2023 07:02:05 AM JST.
Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)
Name                  Stream            Profiles                          Summary                                       
postgresql            9.6               client, server [d]                PostgreSQL server and client module           
postgresql            10 [d]            client, server [d]                PostgreSQL server and client module           
postgresql            12 [e]            client, server [d] [i]            PostgreSQL server and client module           
postgresql            13                client, server [d]                PostgreSQL server and client module           
postgresql            15                client, server [d]                PostgreSQL server and client module           

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

パッケージをモジュール単位でアンインストールする!

パッケージをモジュール単位でアンインストールします。例として、PostgreSQLのバージョン12をアンインストールします。

# dnf module remove postgresql:12 -y
...
# dnf module list postgresql
Updating Subscription Management repositories.
Last metadata expiration check: 0:02:27 ago on Fri 25 Aug 2023 07:02:05 AM JST.
Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)
Name                   Stream             Profiles                       Summary                                        
postgresql             9.6                client, server [d]             PostgreSQL server and client module            
postgresql             10 [d]             client, server [d]             PostgreSQL server and client module            
postgresql             12 [e]             client, server [d]             PostgreSQL server and client module            
postgresql             13                 client, server [d]             PostgreSQL server and client module            
postgresql             15                 client, server [d]             PostgreSQL server and client module            

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

おわりに

RHELでは、パッケージをモジュール単位でインストールする機能が備わっています。モジュール単位でインストールしてバージョンを切り替えて使用することができます。

関連記事

関連書籍(Amazon)

N/A