AlmaLinux 9に最新のMoodleをインストールする

さくらのVPS(メモリ1G、ストレージ100G)に AlmaLinux 9 をインストールしたものを使っている。Swap は2G設定している。

最新の Moodle 4.4 はPHP 8.1、DBは選べるがMariaDBなら10.6.7が必須である。

AlmaLinux 9にこれをインストールしようとすると、罠がある。まず、AlmaLinuxのPHP 8.1にはphp-sodiumがない。なくても動くように見えるが、「php_extension sodium 必ずインストールおよび有効化してください」という警告が出る。

GPT-4に聞いたら、次のようにしてRemi版PHP 8.1に置き換えればいいとのこと。

sudo dnf install epel-release
sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-9.rpm
sudo dnf module reset php
sudo dnf module enable php:remi-8.1
sudo dnf install php-sodium
sudo systemctl restart httpd
sudo systemctl restart php-fpm

やってみたら、うまくいったようである。

また、AlmaLinux 9のMariaDBはまだ10.5.22である。10.6.7以上にするには、MariaDBサーバから直接いただいてくる。https://mirror.mariadb.org/yum/ を見ると、現在利用可能なバージョンが並んでいる。例えば10.11.7の中を見ると、almalinux9-amd64というのがあるので、これを使う。それには /etc/yum.repos.d/mariadb.repo というファイルを作り、次のように書き込む:

[mariadb]
name = MariaDB
baseurl = https://mirror.mariadb.org/yum/10.11.7/almalinux9-amd64
gpgkey = https://mirror.mariadb.org/yum/RPM-GPG-KEY-MariaDB
gpgcheck=1

そして次のように打ち込む:

sudo dnf install --allowerasing mariadb-server mariadb

これで次のものが入るはずである:

MariaDB-shared-10.11.7-1.el9.x86_64
MariaDB-common-10.11.7-1.el9.x86_64
MariaDB-client-10.11.7-1.el9.x86_64
MariaDB-server-10.11.7-1.el9.x86_64
MariaDB-backup-10.11.7-1.el9.x86_64

起動する:

sudo systemctl enable mariadb.service
sudo systemctl start mariadb.service

環境が整えば、あとはMoodleのマニュアル通りにインストールすればよい。