RockyLinux9.5で動作確認をしている。
参考ページ
DNF ツールを使用したソフトウェアの管理 | Red Hat Enterprise Linux | 9 | Red Hat Documentation
ストリームの切り替え
デフォルトの状態でPHPのパッケージの情報を表示するために、次のコマンドを実行する。
dnf info php
PHPのパッケージの情報が次のように表示されて、PHPのバージョンは8.0.30であることが確認できる。
Available Packages
Name : php
Version : 8.0.30
Release : 1.el9_2
Architecture : aarch64
Size : 7.7 k
Source : php-8.0.30-1.el9_2.src.rpm
Repository : appstream
Summary : PHP scripting language for creating dynamic web sites
URL : http://www.php.net/
License : PHP and Zend and BSD and MIT and ASL 1.0 and NCSA
Description : PHP is an HTML-embedded scripting language. PHP attempts to make it
: easy for developers to write dynamically generated web pages. PHP also
: offers built-in database integration for several commercial and
: non-commercial database management systems, so writing a
: database-enabled webpage with PHP is fairly simple. The most common
: use of PHP coding is probably as a replacement for CGI scripts.
利用可能なストリームを確認するために、次のコマンドを実行する。
dnf module list php
PHPのパッケージで利用可能なストリームが次のように表示されて、8.1と8.2のストリームがあることが確認できる。(実行時点でのPHPの最新バージョンは8.4.7)
Rocky Linux 9 - AppStream
Name Stream Profiles Summary
php 8.1 common [d], devel, minimal PHP scripting language
php 8.2 common [d], devel, minimal PHP scripting language
PHPのストリームを8.2に変更するために、次のコマンドを実行する。
dnf -y module switch-to php:8.2
ストリームが切り替えられ、次のように表示される。
Dependencies resolved.
======================================================================================================================================
Package Architecture Version Repository Size
======================================================================================================================================
Enabling module streams:
php 8.2
Transaction Summary
======================================================================================================================================
Complete!
PHPのパッケージの情報を表示するために、次のコマンドを再度実行する。
dnf info php
PHPのパッケージの情報は次のように表示される。
(バージョンが8.2.25になっていることが確認できる)
Available Packages
Name : php
Version : 8.2.25
Release : 1.module+el9.5.0+29598+58484504
Architecture : aarch64
Size : 7.6 k
Source : php-8.2.25-1.module+el9.5.0+29598+58484504.src.rpm
Repository : appstream
Summary : PHP scripting language for creating dynamic web sites
URL : http://www.php.net/
License : PHP-3.01 AND Zend-2.0 AND BSD-2-Clause AND MIT AND Apache-1.0 AND NCSA AND BSL-1.0
Description : PHP is an HTML-embedded scripting language. PHP attempts to make it
: easy for developers to write dynamically generated web pages. PHP also
: offers built-in database integration for several commercial and
: non-commercial database management systems, so writing a
: database-enabled webpage with PHP is fairly simple. The most common
: use of PHP coding is probably as a replacement for CGI scripts.
ストリームが8.2に切り替わった状態で、PHP8.2.25をインストールするために次のコマンドを実行する。
dnf -y install php
インストールされたパッケージが次のように表示される。
Dependencies resolved.
======================================================================================================================================
Package Architecture Version Repository Size
======================================================================================================================================
Installing:
php aarch64 8.2.25-1.module+el9.5.0+29598+58484504 appstream 7.6 k
Installing dependencies:
libedit aarch64 3.1-38.20210216cvs.el9 baseos 101 k
libxslt aarch64 1.1.34-9.el9_5.3 appstream 237 k
nginx-filesystem noarch 2:1.20.1-20.el9.0.1 appstream 8.4 k
oniguruma aarch64 6.9.6-1.el9.6 baseos 213 k
php-common aarch64 8.2.25-1.module+el9.5.0+29598+58484504 appstream 699 k
Installing weak dependencies:
php-cli aarch64 8.2.25-1.module+el9.5.0+29598+58484504 appstream 2.2 M
php-fpm aarch64 8.2.25-1.module+el9.5.0+29598+58484504 appstream 1.8 M
php-mbstring aarch64 8.2.25-1.module+el9.5.0+29598+58484504 appstream 514 k
php-opcache aarch64 8.2.25-1.module+el9.5.0+29598+58484504 appstream 585 k
php-pdo aarch64 8.2.25-1.module+el9.5.0+29598+58484504 appstream 81 k
php-xml aarch64 8.2.25-1.module+el9.5.0+29598+58484504 appstream 138 k
Transaction Summary
======================================================================================================================================
Install 12 Packages
Total download size: 6.5 M
Installed size: 30 M
Downloading Packages:
(1/12): libedit-3.1-38.20210216cvs.el9.aarch64.rpm 457 kB/s | 101 kB 00:00
(2/12): nginx-filesystem-1.20.1-20.el9.0.1.noarch.rpm 32 kB/s | 8.4 kB 00:00
(3/12): oniguruma-6.9.6-1.el9.6.aarch64.rpm 723 kB/s | 213 kB 00:00
(4/12): libxslt-1.1.34-9.el9_5.3.aarch64.rpm 1.7 MB/s | 237 kB 00:00
(5/12): php-xml-8.2.25-1.module+el9.5.0+29598+58484504.aarch64.rpm 414 kB/s | 138 kB 00:00
(6/12): php-pdo-8.2.25-1.module+el9.5.0+29598+58484504.aarch64.rpm 263 kB/s | 81 kB 00:00
(7/12): php-opcache-8.2.25-1.module+el9.5.0+29598+58484504.aarch64.rpm 2.1 MB/s | 585 kB 00:00
(8/12): php-mbstring-8.2.25-1.module+el9.5.0+29598+58484504.aarch64.rpm 5.1 MB/s | 514 kB 00:00
(9/12): php-common-8.2.25-1.module+el9.5.0+29598+58484504.aarch64.rpm 3.9 MB/s | 699 kB 00:00
(10/12): php-fpm-8.2.25-1.module+el9.5.0+29598+58484504.aarch64.rpm 8.4 MB/s | 1.8 MB 00:00
(11/12): php-8.2.25-1.module+el9.5.0+29598+58484504.aarch64.rpm 175 kB/s | 7.6 kB 00:00
(12/12): php-cli-8.2.25-1.module+el9.5.0+29598+58484504.aarch64.rpm 3.8 MB/s | 2.2 MB 00:00
--------------------------------------------------------------------------------------------------------------------------------------
Total 2.8 MB/s | 6.5 MB 00:02
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : php-common-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 1/12
Installing : php-pdo-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 2/12
Installing : php-opcache-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 3/12
Installing : libxslt-1.1.34-9.el9_5.3.aarch64 4/12
Installing : php-xml-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 5/12
Running scriptlet: nginx-filesystem-2:1.20.1-20.el9.0.1.noarch 6/12
Installing : nginx-filesystem-2:1.20.1-20.el9.0.1.noarch 6/12
Installing : php-fpm-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 7/12
Running scriptlet: php-fpm-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 7/12
Installing : oniguruma-6.9.6-1.el9.6.aarch64 8/12
Installing : php-mbstring-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 9/12
Installing : libedit-3.1-38.20210216cvs.el9.aarch64 10/12
Installing : php-cli-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 11/12
Installing : php-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 12/12
Running scriptlet: php-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 12/12
Verifying : libedit-3.1-38.20210216cvs.el9.aarch64 1/12
Verifying : oniguruma-6.9.6-1.el9.6.aarch64 2/12
Verifying : nginx-filesystem-2:1.20.1-20.el9.0.1.noarch 3/12
Verifying : libxslt-1.1.34-9.el9_5.3.aarch64 4/12
Verifying : php-xml-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 5/12
Verifying : php-pdo-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 6/12
Verifying : php-opcache-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 7/12
Verifying : php-mbstring-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 8/12
Verifying : php-fpm-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 9/12
Verifying : php-common-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 10/12
Verifying : php-cli-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 11/12
Verifying : php-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 12/12
Installed:
libedit-3.1-38.20210216cvs.el9.aarch64 libxslt-1.1.34-9.el9_5.3.aarch64
nginx-filesystem-2:1.20.1-20.el9.0.1.noarch oniguruma-6.9.6-1.el9.6.aarch64
php-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 php-cli-8.2.25-1.module+el9.5.0+29598+58484504.aarch64
php-common-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 php-fpm-8.2.25-1.module+el9.5.0+29598+58484504.aarch64
php-mbstring-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 php-opcache-8.2.25-1.module+el9.5.0+29598+58484504.aarch64
php-pdo-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 php-xml-8.2.25-1.module+el9.5.0+29598+58484504.aarch64
Complete!
PHPのバージョンを確認するために、次のコマンドを実行する。
php -v
PHPのバージョンが8.2.25であることが、次のように表示される。
PHP 8.2.25 (cli) (built: Oct 22 2024 15:12:03) (NTS gcc aarch64)
Copyright (c) The PHP Group
Zend Engine v4.2.25, Copyright (c) Zend Technologies
with Zend OPcache v8.2.25, Copyright (c), by Zend Technologies
PHP 8.2.25がインストールされた状態で、PHPのストリームを8.1に切り替えるために、次のコマンドを実行する。
dnf -y module switch-to php:8.1
PHP 8.2がインストールされた状態でストリームを8.1に変更したため、ダウングレードされた旨を含む次の実行結果が表示される。
Dependencies resolved.
======================================================================================================================================
Package Architecture Version Repository Size
======================================================================================================================================
Downgrading:
php aarch64 8.1.32-1.module+el9.5.0+31393+1f1dedb8 appstream 7.4 k
php-cli aarch64 8.1.32-1.module+el9.5.0+31393+1f1dedb8 appstream 2.1 M
php-common aarch64 8.1.32-1.module+el9.5.0+31393+1f1dedb8 appstream 686 k
php-fpm aarch64 8.1.32-1.module+el9.5.0+31393+1f1dedb8 appstream 1.7 M
php-mbstring aarch64 8.1.32-1.module+el9.5.0+31393+1f1dedb8 appstream 466 k
php-opcache aarch64 8.1.32-1.module+el9.5.0+31393+1f1dedb8 appstream 583 k
php-pdo aarch64 8.1.32-1.module+el9.5.0+31393+1f1dedb8 appstream 78 k
php-xml aarch64 8.1.32-1.module+el9.5.0+31393+1f1dedb8 appstream 135 k
Switching module streams:
php 8.2 -> 8.1
Transaction Summary
======================================================================================================================================
Downgrade 8 Packages
Total download size: 5.8 M
Downloading Packages:
(1/8): php-pdo-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64.rpm 156 kB/s | 78 kB 00:00
(2/8): php-xml-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64.rpm 244 kB/s | 135 kB 00:00
(3/8): php-opcache-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64.rpm 957 kB/s | 583 kB 00:00
(4/8): php-mbstring-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64.rpm 3.3 MB/s | 466 kB 00:00
(5/8): php-common-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64.rpm 2.2 MB/s | 686 kB 00:00
(6/8): php-fpm-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64.rpm 3.5 MB/s | 1.7 MB 00:00
(7/8): php-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64.rpm 52 kB/s | 7.4 kB 00:00
(8/8): php-cli-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64.rpm 4.7 MB/s | 2.1 MB 00:00
--------------------------------------------------------------------------------------------------------------------------------------
Total 3.4 MB/s | 5.8 MB 00:01
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Downgrading : php-common-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64 1/16
Downgrading : php-xml-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64 2/16
Downgrading : php-pdo-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64 3/16
Downgrading : php-opcache-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64 4/16
Downgrading : php-mbstring-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64 5/16
Downgrading : php-fpm-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64 6/16
Running scriptlet: php-fpm-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64 6/16
Downgrading : php-cli-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64 7/16
Downgrading : php-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64 8/16
Cleanup : php-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 9/16
Cleanup : php-cli-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 10/16
Running scriptlet: php-fpm-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 11/16
Cleanup : php-fpm-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 11/16
Cleanup : php-mbstring-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 12/16
Cleanup : php-opcache-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 13/16
Cleanup : php-pdo-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 14/16
Cleanup : php-xml-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 15/16
Cleanup : php-common-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 16/16
Running scriptlet: php-common-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 16/16
Verifying : php-xml-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64 1/16
Verifying : php-xml-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 2/16
Verifying : php-pdo-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64 3/16
Verifying : php-pdo-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 4/16
Verifying : php-opcache-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64 5/16
Verifying : php-opcache-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 6/16
Verifying : php-mbstring-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64 7/16
Verifying : php-mbstring-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 8/16
Verifying : php-fpm-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64 9/16
Verifying : php-fpm-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 10/16
Verifying : php-common-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64 11/16
Verifying : php-common-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 12/16
Verifying : php-cli-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64 13/16
Verifying : php-cli-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 14/16
Verifying : php-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64 15/16
Verifying : php-8.2.25-1.module+el9.5.0+29598+58484504.aarch64 16/16
Downgraded:
php-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64 php-cli-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64
php-common-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64 php-fpm-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64
php-mbstring-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64 php-opcache-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64
php-pdo-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64 php-xml-8.1.32-1.module+el9.5.0+31393+1f1dedb8.aarch64
Complete!
PHPのバージョンがダウングレードされたことを確認するために、次のコマンドを実行する。
php -v
PHPのバージョンがダウングレードされて8.1.32であることが、次のように表示される。
PHP 8.1.32 (cli) (built: Mar 11 2025 22:09:20) (NTS gcc aarch64)
Copyright (c) The PHP Group
Zend Engine v4.1.32, Copyright (c) Zend Technologies
with Zend OPcache v8.1.32, Copyright (c), by Zend Technologies
リポジトリの有効化・無効化
config-managerをインストールするするために、次のコマンドを実行する。
dnf install 'dnf-command(config-manager)'
リポジトリIDを確認するために、次のコマンドを実行する。
dnf repolist --all
リポジトリを無効化するには、次のコマンドを実行する。
dnf config-manager --disable <repo id>
リポジトリを有効化するには、次のコマンドを実行する。
dnf config-manager --enable <repo id>
チートシート
有効なリポジトリのリストを表示
dnf repolist
無効なリポジトリを含めた全てのリストを表示
dnf repolist --all
利用可能なモジュールのリストを表示
dnf module list