NextCloud的离线升级

原本nextcloud可以通过其后台进行自动更新的,但是,当你的服务器在国内时,由于网络网络原因往往不能完成自动更新,类似这样的错误: 很明显:服务器下载nextcloud的更新包时出错。相应的,解决办法就是本地下载安装包后再上传到服务器来完成安装

本地下载安装包

根据上图位置中的提示,其实已经给出了更新包的下载地址,复杂该地址,通过迅雷等p2p软件基本都能完成下载,或者使用代理,这个就看个人所需了。

上传安装包到服务器端

我是通过nextcloud本身的服务,先将安装包通过nextcloud上传到服务器,再ssh把该文件复制到所需路径。一般来说,该路径为:网站目录/data/updater-xxxxxxxx/downloads,如果你自定义过文件的保存路径,那么该路径则做相应的更改,比如我的是:/home/myncdata/updater-xxxxxxxx/downloads。此时该路径下,可能已经存在一个之前自动更新下载失败的一个更新包,记得删除,或者复制的时候直接覆盖。

cp nextcloud-18.0.1.zip  /home/myncdata/updater-xxxxxxxx/downloads/

修改状态设置

前面提到的updater-xxxxxxxx目录有一个隐藏文件.step文件,将里面的内容由{"state":"end","step":4}修改为{"state":"stop","step":5}。 !!! 不同版本的nextcloud,此处显示及修改的内容可能略有出入,总之:state后面修改为stopstep后面的值,较之前的内容加一,表示跳过上一个步骤(下载安装包)。

登录后台完成更新

重新登录网站后台,切换到更新的位置。回到最开始的更新界面,点击打开更新器(切记:不能点击之前失败页面中的retry按钮,否则会循环之前的错误),在新的界面中点击continue按钮稍作等待即可顺利完成更新。 完成更新后,滚动到底部,有两个选项按钮,如图所示: 该选项提示是否保持维护模式,选择NO,让网站恢复正常运行。


发表于:2020-02-25