Dans ce tutoriel, nous allons voir comment migrer Nextcloud version 15 vers la version 16 sur Ubuntu 16.04. La particularité de la version 16 de Nextcloud, c’est d’utiliser PHP à partir de la version 7.1.
Prérequis.
Nextcloud est passé en V16 pendant l’été. Il n’est pas utile toute suite de migrer vos serveurs de productions. Il est préférable d’attendre quelques releases avant. Aujourd’hui au 14/09/2019 nous sommes à la version 16.0.4.
Si vous êtes sur Ubuntu 16 avec une version de PHP <7.1, alors NextCloud vous indique l’existence d’une mise à jour mais sans pouvoir la réaliser.
Mettre à jour PHP 7.0 vers 7.1 sous Ubuntu 16.04
Si vous ne souhaitez pas passer votre version 18 LTS de Ubuntu, vous devrez utiliser des dépôts non-officiel pour mettre à jour PHP. Voici la procédure à vos risques et périls.
La première chose à faire c’est de connaitre votre version de PHP avec la commande suivante :
php -v
Ensuite, vu que les paquets PHP V7.1 n’existe pas officiellement dans les dépôts Ubuntu, nous allons devoir utiliser d’autres dépôts, ceux du célèbre Ondřej Surý.
Pour installer un nouveau dépôt, il faut utiliser les commandes suivantes :
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
A partir de maintenant vous pouvez installer PHP V7.1 ainsi que ses dépendances pour notre instance Nextcloud..
sudo apt-get install php7.1
sudo apt-get install php7.1-cli php7.1-common php7.1-json php7.1-opcache php7.1-mysql php7.1-mbstring php7.1-mcrypt php7.1-zip php7.1-fpm
Après avoir installé les modules supplémentaires, nous allons activer 2 modules pour que PHP 7.1 soit actif dans la configuration d’Apache.
a2enmod proxy_fcgi setenvif a2enconf php7.1-fpm
Enfin on redémarre le serveur Apache
systemctl reload apache2
Vérifications de la version de PHP utilisée.
Maintenant pour nous assurer que nous utilisons bien la bonne version de PHP, nous allons utiliser plusieurs commandes :
php --ini |grep Loaded
La sortie de cette commande doit être ceci :
php -v
Migrer Nextcloud vers la version 16.
Une fois la mise à jour de PHP effectuée, retourner sur votre instance Nextcloud puis aller dans Paramètres -> Administration -> Vue d’ensemble -> Version.
Le bouton pour effectuer la mise à jour Ouvrir le système de mise à jour, est maintenant disponible. Vous pouvez, enfin, mettre à jour votre Nextcloud sur une Ubuntu 16.04.
php occ db:add-missing-indices
Par exemple ici, nous voyons que nous avons une alerte sur la limite de mémoire de PHP. Nous devons corriger le problème rapidement afin que notre Nextcloud ne soit pas trop lent.
Cette erreur arrive fréquemment lorsqu’on change de version de PHP, car on utilise un php.ini différent.
Pour modifier cette valeur il faut éditer les fichiers php.ini qui se trouvent dans /etc/php/7.1/ vous devez modifier les fichiers dans /cli et /apache2
Modifier ces 2 valeurs :
- memory_limit à 1G
- upload_max_filesize à 1G
systemctl restart apache2
Source: Nextcloud
That’s All.