Migration Jessie -> Stretch : php7.0-fpm HS

Bonjour,
J’ai entrepris une migration de Jessie vers Stretch sur un RaspberryPi3.
Après quelques difficultés liées à l’absence du fichier `/etc/fail2ban/filter.d/yunohost.conf, je suis bien en Stretch et Yunohost 3.4.2.4.
J’ai ensuite (comme indiqué dans la doc (https://yunohost.org/#/jessie_stretch_migration) mis à jour les application, et cela s’est mal passé pour plusieurs d’entre elles : spip, roundcube (au moins). Le mail fonctionne, mailman également (ouf !).
Lorsque je veux restaurer les sauvegardes pre-upgrade, cela échoue avec un message (pour spip) :

    php7.0-fpm.service is not active, cannot reload.
    ERROR 1396 (HY000) at line 1: Operation DROP USER failed for 'spip'@'localhost'
    ERROR 1008 (HY000) at line 1: Can't drop database 'spip'; database doesn't exist
    **L’opération « Restaurer « spip » depuis une sauvegarde » a échouée ! Pour avoir de l’aide, merci [ de fournir le log complet de l’opération](https://sambaedu.org/yunohost/admin/#/tools/logs/20190410-084953-backup_restore_app-spip)**
    Impossible de restaurer l’application « spip »
    cp: cannot stat './sources': No such file or directory
    Packagers /!\ : 'app checkurl' is deprecated ! Please use the helper 'ynh_webpath_register' instead !
    'yunohost app checkurl' is deprecated and will be removed in the future
    La liste d’applications community a été récupérée
    La liste d’applications yunohost a été récupérée
    Connecté

Il semble y avoir un problème avec php7.0-fpm dont le service est inactif dans l’interface.
Si je le relance à la main, le journal me dit :

[10-Apr-2019 10:55:27] ERROR: [pool roundcube] the chdir path '/var/www/roundcube' does not exist or is not a directory
[10-Apr-2019 10:55:27] ERROR: failed to post process the configuration
[10-Apr-2019 10:55:27] ERROR: FPM initialization failed

L’interface webadmin fonctionne, mais toutes les applis renvoient une erreur 502, et j’ai la page de nginx à la place de mon spip :-
Comment puis-je régler cela ?
Merci :wink:

Qu’est-ce qui se passe si tu tentes de démarrer le service php7.0-fpm, soit depuis la webadmin, soit en ligne de commande avec systemctl start php7.0-fpm ?

Si ça semble ne pas marcher, que raconte systemctl status php7.0-fpm | cat ?

Peux t’on avoir le log complet de la restauration de spip ?

Pour roundcube, j’ai l’impression que la restauration n’a pas fonctionné non plus, il semble rester des bouts de configuration.
Tu devrais essayer de les enlever (par exemple en désinstallant roundcube) puis redémarer php-fpm.

Peut être que la restauration de spip a échoué à cause de l’echec de roundcube (qui fait planter php-fpm).

Voici le message d’erreur si je tente de lancer php7.0-fpm manuellement.
J’ai l’impression qu’il y a des scories des app qui ont merdé quelque part dans la config…

admin@sambaedu:~ $ sudo systemctl start php7.0-fpm
Job for php7.0-fpm.service failed because the control process exited with error code.
See "systemctl status php7.0-fpm.service" and "journalctl -xe" for details.
admin@sambaedu:~ $ sudo systemctl status php7.0-fpm.service
● php7.0-fpm.service - The PHP 7.0 FastCGI Process Manager
   Loaded: loaded (/lib/systemd/system/php7.0-fpm.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Wed 2019-04-10 13:37:30 CEST; 17s ago
     Docs: man:php-fpm7.0(8)
  Process: 19371 ExecStart=/usr/sbin/php-fpm7.0 --nodaemonize --fpm-config /etc/php/7.0/fpm/php-fpm.conf (code=exited, status=78)
 Main PID: 19371 (code=exited, status=78)

Apr 10 13:37:29 sambaedu.org systemd[1]: Starting The PHP 7.0 FastCGI Process Manager...
Apr 10 13:37:30 sambaedu.org php-fpm7.0[19371]: [10-Apr-2019 13:37:30] ERROR: [pool roundcube] the chdir path '/var/www/roundcube' does not exist or is not a
Apr 10 13:37:30 sambaedu.org php-fpm7.0[19371]: [10-Apr-2019 13:37:30] ERROR: failed to post process the configuration
Apr 10 13:37:30 sambaedu.org php-fpm7.0[19371]: [10-Apr-2019 13:37:30] ERROR: FPM initialization failed
Apr 10 13:37:30 sambaedu.org systemd[1]: php7.0-fpm.service: Main process exited, code=exited, status=78/n/a
Apr 10 13:37:30 sambaedu.org systemd[1]: Failed to start The PHP 7.0 FastCGI Process Manager.
Apr 10 13:37:30 sambaedu.org systemd[1]: php7.0-fpm.service: Unit entered failed state.
Apr 10 13:37:30 sambaedu.org systemd[1]: php7.0-fpm.service: Failed with result 'exit-code'.

Et effectivement : /var/www/roundcube n’existe pas.

Je vais essayer de désinstaller roundcube.
[Edit] ni roundcube ni spip ne sont dans les application installées…

Voici le log concernant spip :
https://paste.yunohost.org/raw/igoboloxik

Ce script de restauration de spip date d’avril 2017! @Kayou a mis à jour ce script aujourd’hui.

Ceci étant, je ne comprend pas pourquoi ça échoue, c’est comme si il n’y avait pas de répertoire sources dans ton archive. Peux tu la télécharger et regarder à l’intérieur pour voir si ce répertoire “sources” est présent ?
Il devrait être dans “app/spip/backup/”

1 Like

Il n’y a pas de répertoire source dans /apps/spip/backup/ de l’archive spip-pre-upgrade1.tar.gz

Pour relancer php, a mon avis tu devrais supprimer le fichier de pool roundcube :

rm /etc/php/7.0/fpm/pool.d/roundcube.conf

J’ai fait ceci (après quelques essais)

mv /etc/php/7.0/fpm/pool.d/roundcube.conf /etc/php/7.0/fpm/pool.d/roundcube.conf.old
mv /etc/php/7.0/fpm/pool.d/zerobin.conf /etc/php/7.0/fpm/pool.d/zerobin.conf.old

Le service php7.0-fpm a pu repartir.
Reste à récupérer le spip…

Regarde dans la sauvegarde du spip et essaie de retrouver les fichiers. Le plus important c’est le dump de mysql (db.sql ou dump.sql).

Les fichiers sources sont peut être ailleurs, regarde bien.

Si tu as ce qu’il faut, il peut être possible de réinstaller ça manuellement, en faisant les actions du script de restauration à la main.