メモリが貧弱な環境でNextcloudをメンテナンスする

メモリを食う原因はDBやHTTPサーバーなので、それらのサービスを止めた上でメンテナンスするとうまく行く。 ディレクトリ構成やユーザ名は適宜読み替えること。

# mariadb, httpdを止める
sudo systemctl stop mariadb.service
sudo systemctl stop httpd.service

# yumのアップデート
sudo yum update

# updaterをCLIから実行
sudo -u apache php /var/www/html/nextcloud/updater/updater.phar

# occ upgradeするためにDBだけ起動する
sudo systemctl start mariadb.service

# occ upgrade
sudo -u apache /var/www/html/nextcloud/occ upgrade
sudo -u apache php /var/www/html/nextcloud/occ maintenance:mode --off

# httpdを起動
sudo systemctl start httpd.service

失敗したとき

updaterで失敗したときは、実行履歴がファイルとして残ってしまっているため、それを削除してやり直す。

$ rm nextcloud/data/updater-xxxx/.step

yum updateでコケたときの回復は結構面倒なので、適宜調べてください(記録を残していなかった)。