Nextcloudでアップデートに失敗して再度アップデートできなくなった場合の対処方法

2022-07-19

NextcloudのWEB画面にログインしたらバージョンをみると古くなっていたので、「概要」ページ内で最新版にアップデートすると「Verify integrity」の所で失敗になりました。

再度、アップデートすると「Step 5 is currently in process. Please reload this page later.」と表示されて、アップデートできなくなりました。Apacheの再起動しても駄目でどうするか調べていたら、Nextcloudのあるディレクトリ内の「nextcloud/data/updater-xxxxxx/」のディレクトリを削除すれば良いようです。「xxxxxx」はハッシュ値のような英数字の並びです

# dataの下のディレクトリに「updater-xxxxx」があるか確認
$ ls /var/www/html/nextcloud/data/updater-ocezdzb4sg8l/
backups  downloads

# 「updater-xxxxx」を削除する
$ sudo rm -Rf /var/www/vhosts/nextcloud.m-yabe.com/nextcloud/data/updater-ocezdzb4sg8l

失敗の原因ですが、php.ini でmemory_limit の値が低く、それが原因で「Verify integrity」の箇所で止まっていたようです。「概要」ページ内で警告も出ていたので、「memory_limit = 512M」に変更してから、アップデートするとエラー無くアップデートできました

$ sudo vim /etc/php.ini
memory_limit = 512M

$ sudo systemctl restart php-fpm