以下の内容はhttps://let.blog.jp/tag/AlmaLinux9より取得しました。


AlmaLinux9 は普通に Python が入ってる
CentOS8 では Python は初期状態では入ってませんでした
一応システム内部用としてはあるのですがパスは通っていなくて 使うことは推奨されない形でした
直接 /usr/libexec/platform-python を実行すれば使えます
🔗 CentOS8 の Python の場所

これは AlmaLinux8 でも同じです
AlmaLinux9 でもここは変わらないかなと思っていたのですが python3 コマンドを実行したら普通に動きました

調べてみると platform-python は同じ場所にあるのですが /usr/bin/python3.9 へのシンボリックリンクになっていました

[AlmaLinux9]
[root@061e426ad383 opt]# ls -l /usr/libexec/ | grep platform
lrwxrwxrwx 1 root root 18 Apr 16 2022 platform-python -> /usr/bin/python3.9
lrwxrwxrwx 1 root root 18 Apr 16 2022 platform-python3.9 -> /usr/bin/python3.9

/usr/bin/python3.9 はバイナリの実行ファイルです

AlmaLinux8 ではこうなってました

[AlmaLinux8]
[root@4394942894ff /]# ls -l /usr/libexec/ | grep platform
lrwxrwxrwx 1 root root 20 Apr 29 2022 platform-python -> ./platform-python3.6
-rwxr-xr-x 2 root root 11864 Apr 29 2022 platform-python3.6
-rwxr-xr-x 2 root root 11864 Apr 29 2022 platform-python3.6m

platform-python3.6 や platform-python3.6m がバイナリの実行ファイルです

dnf の shebang を見てみると AlmaLinux9 では platform-python ではなく直接 python3 を指定してました

[wsl@LAPTOP-W10:~]$ sudo podman run --rm almalinux:8 head -n 1 /usr/bin/dnf
#!/usr/libexec/platform-python
[wsl@LAPTOP-W10:~]$ sudo podman run --rm almalinux:9 head -n 1 /usr/bin/dnf
#!/usr/bin/python3

どういう経緯があったのかはわかりませんが不評だったので元に戻したのでしょうか
AlmaLinux9 は標準でモジュールにバージョンが用意されてない
Node.js などいくつかのパッケージをインストールしようとして バージョンを選びたかったので dnf module list を実行してみると

[root@ALMA9 /]# dnf module list nodejs
Last metadata expiration check: 0:00:15 ago on Sun Oct 9 04:27:47 2022.
Error: No matching Modules to list

[root@ALMA9 /]# dnf module list
Last metadata expiration check: 0:00:43 ago on Sun Oct 9 04:27:47 2022.

モジュールがありません
nodejs 以外のも無いようです

AlmaLinux8 ではこういう感じです

[root@ALMA8 /]# dnf module list nodejs
Last metadata expiration check: 0:05:13 ago on Sun Oct 9 04:28:07 2022.
AlmaLinux 8 - AppStream
Name Stream Profiles Summary
nodejs 10 [d] common [d], development, minimal, s2i Javascript runtime
nodejs 12 common [d], development, minimal, s2i Javascript runtime
nodejs 14 common [d], development, minimal, s2i Javascript runtime
nodejs 16 common [d], development, minimal, s2i Javascript runtime

ググるとこんな情報がありました
https://almalinux.discourse.group/t/almalinux-9-dnf-module-list-is-empty/1181

RHEL8 ですべてをモジュール化したけど良くなかったので 最小限の必要になったらモジュール化するという方針になったみたいです
つまり OS として必要にならない限り最新版や少し古い版はモジュールとして用意されていないようです
OS 標準以外のバージョンをインストールしたいなら CentOS7 までみたいに自分でビルドしたりリポジトリ追加してインストールしたりしないといけないみたいです
また面倒なのに戻りましたね
AlmaLinux9 に PHP5.6 が入らなかった
PHP で古いバージョンと動作比較しようと PHP5.6 をインストールしようとしたら入りませんでした
CentOS7 や AlmaLinux8 だと remi リポジトリを追加して php56 をインストールすれば使えました
同じ remi なら AlmaLinux9 でもインストールできるだろうと思ったのですが php56 が見つかりませんでした

https://rpms.remirepo.net/enterprise/8/safe/
https://rpms.remirepo.net/enterprise/9/safe/

一覧をみても 9 用は 7.4 以降になっています

調べてみると remirepo の管理者が理由を回答していました
https://forums.centos.org/viewtopic.php?p=333674#p333699

PHP8.1 より前は RHEL9 系のデフォルトの openssl3 との互換性がないみたいです
公式リポジトリには 8.0 がありますがとても大きな互換性パッチを当ててるんだとか
remi だと 7.4 以降をインストールできるので 7.4 と 8.0 にパッチを当ててるのでしょうか
そういう苦労が必要ならかなり古い 5.6 を対応しないのは仕方ないですね

使いたいなら EL-8 を とありますし AlmaLinux8 に入れることにします



以上の内容はhttps://let.blog.jp/tag/AlmaLinux9より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14