Moodleのアップグレードをするためのメモ
Moodleのversionアップグレードに関するメモ
Moodleに詳しくないのでただのメモです。
Moodle4.5からMoodle5.1にしてみました。
バージョン5からAIが強化されたらしいので興味からですね。
5.3がでてなかったので今回はlts版じゃないものインストール。
5.2はプラグイン対応が少ないのでやめました(テーマが・・・)
前に建てた仮想環境で構築したものをなんとなくアップグレードしただけです。
アップグレードの準備をする
Moodleをメンテナンスモードにする
Moodleのインストールディレクトリ(例: /var/www/moodle)で以下のコマンドを実行する。
sudo -u www-data php /var/www/moodle/admin/cli/maintenance.php --enable
moodleフォルダを移動しておく
moodleのデータファイルは別のフォルダなどにあるので
もとのフォルダを日付等で移動しておく
データの保存先はmoodleのconfig.phpに設定場所が書いてますが今回、触ることはないです。
mv moodle moodle+[日付などで]
ダウンロード
公式サイトを確認してください。
zip版である必要はないです。
wget https://新しいmoodle.zip
解凍する
unzip 新しいmoodle.zip
config.phpを古いmoodleからコピー
わかりやすいように/var/www/はつけてます。
sudo cp /var/www/moodle+[日付などで]/config.php /var/www/moodle/config.php
config.phpはrootとかにしておいた方がいいです。
最後(アップグレード後)でいいです。
chown -R root:root /var/www/moodle/config.php
アップグレードする
max_input_vars=5000を指定したのはエラーがでたからです。
fpmでは10000でしたがコマンドでは適用されないので
iniで設定してるなら不要
sudo -u www-data php -d max_input_vars=5000 moodle/admin/cli/upgrade.php
sudo chown -R www-data:www-data moodle
sudo chmod -R 755 moodle
解凍時にファイルすくないなと思いましたが
Moodleって5.0あたりからルート変更されたんですね
nginxの場合はrootを以下に
root /var/www/moodle/public;
メンテナンスモードを解除する
sudo -u www-data php /var/www/moodle/admin/cli/maintenance.php --disable
動作テスト
管理者システムのセキュリティでなにかでてないかとかCronはちゃんと動作しているか?をとりあえずチェックする
ただのメモ(検証が必要)
root権限の方がセキュアかも?
ただ管理画面で色々制限がでるので要確認・検証
プラグインのブラウザからのインストール等でエラーがでたり
基本はroot所有にして、Webサーバーによる改ざんを防ぐ
sudo chown -R root:root /var/www/moodle
config.phpだけWebサーバーが読めるように変更
権限はrootだけでいいかもしれないですが一応
要確認、修正
sudo chown root:www-data /var/www/moodle/config.php
sudo chmod 640 /var/www/moodle/config.php