Eason

咸鱼咯

升级你的OwnCloud到10.3.0

OwnCloud-10.3.0版本兼容的最高版本为php-7.2.xx,别听OwnCloud官方文档忽悠你,经测试php7.3版本根本不被兼容。


编译安装php-7.2.24

php的依赖包自行查文档吧。。

./configure --prefix=/usr/local/php-7.2.24 \
--with-config-file-path=/usr/local/php-7.2.24/etc \
--with-mysql=mysqlnd --with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-gd --with-png-dir=/usr/local/libpng \
--with-jpeg-dir=/usr/local/jpeg \
--with-freetype-dir=/usr/local/freetype \
--with-xpm-dir=/usr/ \
--with-vpx-dir=/usr/local/libvpx/ \
--with-t1lib=/usr/local/t1lib \
--with-iconv --with-openssl --with-xmlrpc \
--without-pear --with-gettext --with-mcrypt \
--with-curl --with-icu-dir=/usr --with-pdo-sqlite \
--with-pdo-pgsql --with-mhash --with-sqlite3 \
--with-sqlite --with-bz2 \
--with-mysql-sock=/DATA/MySQL-DATA/mysql.sock \
--with-mssql --with-imap --with-imap-ssl \
--with-ldap --with-xsl --with-gdbm --with-kerberos \
--enable-sysvsem --enable-sysvshm --enable-exif \
--enable-wddx --enable-ctype --enable-intl \
--enable-phar --enable-fileinfo --enable-session \
--enable-zip --with-libzip --enable-soap --enable-pcntl \
--enable-sockets --enable-libxml --enable-xml --enable-zlib \
--enable-bcmath --enable-shmop --enable-inline-optimization \
--enable-opcache --enable-mbregex --enable-fpm \
--enable-mbstring --enable-ftp --enable-gd-native-ttf \
--enable-calendar --disable-sigchild --disable-debug \
--with-zlib

上面这个configure串中的某些编译项目呢,很可能会被提示未知,依我看不用抄理他它,只要make结果不缺少依赖LIB就行。 另外,PHP官方建议在make之后使用make test指令对编译结果进行测试以免出现bug,这纯属TMDXJB扯D——丫的PHP这个烂玩意儿本来就bug一大堆,而且不可避免,要是哪天劳资心情不好纠结病犯了+画蛇添足的run了make test验证后发现编译结果没有存在致命bug,那老子会立刻怀疑人生-_-!…  SO,少年,不用怕JB啥,直接make install吧!

升级准备

备份数据库
mysqldump -u username -p password owncloud_dbname > dump_filename

把老的OwnCloud目录改名
mv /OwnCloud /OwnCloud-old

解压新版本到安装目录
tar zxf owncloud-10.3.0.tgz -C /OwnCloud

拷贝老版本的config.php文件道新版本目录中
cp /OwnCloud-old/config/config.php /OwnCloud/config/

拷贝或移动data目录到新版本目录中
mv /OwnCloud-old/data /OwnCloud/

赋权
chown -R nobody.nobody /OwnCloud

升级过程(重要!)

升级过程用root账户就可以了

检查mysql服务,必须运行 
ps -ef |grep mysql

进入新版本的目录 # cd /OwnCloud 指定nginx和php的运行账户执行occ工具进入owncloud维护模式 sudo -u nobody php occ maintenance:mode --on 指向下面的指令关掉某个会报错的东东,因为升级过程中他会报错,别问我报的啥错误,我也不清楚。
sudo -u nobody php occ  app:disable files_videoplayer
执行升级 sudo -u nobody php occ upgrade 如果没有报错就算升级完了。 再把那个关掉的那个东东打开 sudo -u nobody php occ  app:enable files_videoplayer 指定nginx和php的运行账户执行occ工具退出owncloud维护模式 sudo -u nobody php occ maintenance:mode --off 启动php 和 httpd服务 service php-fpm start /usr/lcoal/nginx/sbin/nginx

打完收工!

Comments are currently closed.