PHP8.0→PHP8.1へのアップデート

 予備環境でアップデートしても使用しているwordpress,rainloop,nextcloudあたりに問題がなかったのでアップグレードを実施。
 一般的には全PHPモジュールをアンインストールして新バージョンをインストールするのがいいのでしょうが、PHP8.0をデフォルトバージョンとしてインストールしているので置き換えインストールでやってみる。
 以下は大まかな手順。

  • 現パッケージの状況確認
    まずは ”rpm -qa |grep -i php”コマンドでインストールしているPHPモジュールを表示してメモしておく。
    その次に"dnf module list php"を実行して表示される結果を確認しStream欄のphp-8.0のところに"[e]"と表示されていることを確認。この状態が”php8.0がデフォルトバージョンとしてインストールされている”状態です。
  • モジュールセットの解除
    “dnf module reset php"を実行してデフォルトバージョンの設定を解除する。このコマンド実行後に"dnf module list php"を実行するとこれまでphp-8.0の欄に表示されていた"[e]"が消えているはず。
  • php-8.1をデフォルトモジュールに設定
    “dnf module enable php:remi-8.1″を実行してデフォルトのモジュールを8.1に変更する。このコマンド実行後に"dnf module list php"を実行するとこれまでphp-8.1の欄に"[e]"が表示されているはず。
    なお、これはremiリポジトリを使用してる場合で、remiリポジトリを使用していない場合はenableする対象は適宜変更となります。
  • PHPのアップグレード
    この状態で"dnf upgrade"を実行すると置き換え先が存在するモジュールについてはバージョン8.1にアップデートされる。もしも置き換え先に該当するパッケージがない場合はそのモジュールが必要ないならアンインストールして再チャレンジ。そうでないならモジュールがパッケージ化されるまでお預けか己でコンパイルする。

 以上となります。

Linux