This script does not work for me. always a permissions issue, and the files are all referencing a bad path. It is prepending the updater path to them with the .. instead of making it more normally readable, when it is complaining about every most of the files it he system it seems.
What permissions are expected here? Everything is owned by apache.
This is a standard ownCloud 9.0 install that used the ce9.0 repo. The hardening guide was followed back when it was setup. Obviously with Nextcloud that is no longer a thing to do because of the new update process.
As you can clearly see from the screenshot, I have already ran the chown to get everything back to the apache user. That is the only thing the permissions for updating says to do.
Edit: actually this was originally ownCloud version 8.2 or something. Upgraded to 9 last summer-ish. And now with Nextcloud being so solid, I really want it converted.
Did you fix all the permissions in the update folder? Or before you fix it, the downloaded and extracted files have which permissions (you have to guess the .. in the path, locate or find can help you to search for a file)?
And the answer is SELinux. I have had this system setup and functional with SELinux enforcing from the beging, so not surprised that I did not think about it.
For the purpose of the updater, add a damned check and tell people if SELinux is enforcing.
For going forward, the Nextcloud team needs to figure out what to do about this, because there is no way people should be expected to run with SELinux disabled.