nextcloud 12.0.3へのアップデートが失敗する場合の対処法

nextcloud 12.0.3へのアップデートが失敗する場合の対処法

nextcloudを12.0.3へアップデートしようとしたところ、CLIからのアップグレード実行で
下記エラーメッセージがでてしまい先へ進めず。

PHP Fatal error: Class OCA\User_SAML\UserBackend contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (OCP\Authentication\IApacheBackend::getLogoutUrl) in /usr/share/nextcloud/apps/user_saml/lib/userbackend.php

調べたところ、githubでパッチが公開されいたので、そちらのパッチを適用します。

https://github.com/nextcloud/server/issues/6501

パッチの適用

cd /var/www/nextcloud/apps/user_saml/lib
wget https://github.com/nextcloud/user_saml/pull/145.patch
patch -p0 < 145.patch
File to patch:UserBackend.php

アップグレードが失敗している場合、メンテナンスモードのままとなっているため
configファイルを編集し、一度メンテナンスモードを解除します。

cd /var/www/nextcloud
vi config/config.php

‘maintenance’ => false,  と変更しておきます。

適用完了後下記コマンドを実行し、nextcloudをアップグレードします。

cd /var/www/nextcloud
sudo -u apache php ./occ upgrade

正常に完了したら、ログインページよりログインし、管理ページ上でバージョンがあがっていることを確認します。

 

 


PAGE TOP