Migration considérée comme partielle

Mon serveur Yunohost
Matériel : machine virtuelle sur XigmaNAS (HP Proliant Gen 8).
Administration possible via HTTP ou SSH.

Bonjour, je rencontre un problème sur mon serveur. La dernière migration réalisée un mois auparavant semble avoir été incomplète.

L’interface web rapporte des étapes de la migration en attente:

Migrations en attente

24. Réparer l'application Python après la migration Bullseye

23. Migration des bases de données de PostgreSQL 11 vers 13

22. Migration des fichiers de configuration php7.3-fpm 'pool' vers php7.4

21. Mise à niveau du système vers Debian Bullseye et YunoHost 11.x

Le fonctionnement des services utilisés, mail par exemple ou applications (nextcloud) n’est pas affecté apparemment.

D’abord suit le journal issu d’une tentative de poursuite de la migration.

ended_at: 2023-01-07 10:36:14.460156
error: "La migration 0021_migrate_to_bullseye a \xE9chou\xE9 avec l'exception La distribution\
  \ Debian actuelle n'est pas Buster ! Si vous avez d\xE9j\xE0 effectu\xE9 la migration\
  \ Buster->Bullseye, alors cette erreur est symptomatique du fait que la migration\
  \ n'a pas \xE9t\xE9 termin\xE9e correctement \xE0 100% (sinon YunoHost aurait marqu\xE9\
  \ la migration comme termin\xE9e). Il est recommand\xE9 d'\xE9tudier ce qu'il s'est\
  \ pass\xE9 avec l'\xE9quipe de support, qui aura besoin du log **complet** de la\
  \ migration, qui peut \xEAtre retrouv\xE9 dans Outils > Journaux dans la webadmin.\
  \ : annulation"
interface: api
operation: tools_migrations_migrate_forward
parent: null
started_at: 2023-01-07 10:36:14.289375
success: false
yunohost_version: 11.0.10.2

============

2023-01-07 11:36:14,307: INFO - Exécution de la migration 0021_migrate_to_bullseye...
2023-01-07 11:36:14,419: INFO - NB: the previous migration log id seems to be 20221123-224423-tools_migrations_migrate_forward. You can share it with the support team with : sudo yunohost log share 20221123-224423-tools_migrations_migrate_forward
2023-01-07 11:36:14,422: ERROR - La migration 0021_migrate_to_bullseye a échoué avec l'exception La distribution Debian actuelle n'est pas Buster ! Si vous avez déjà effectué la migration Buster->Bullseye, alors cette erreur est symptomatique du fait que la migration n'a pas été terminée correctement à 100% (sinon YunoHost aurait marqué la migration comme terminée). Il est recommandé d'étudier ce qu'il s'est passé avec l'équipe de support, qui aura besoin du log **complet** de la migration, qui peut être retrouvé dans Outils > Journaux dans la webadmin. : annulation
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/yunohost/tools.py", line 814, in tools_migrations_run
    migration.run()
  File "/usr/lib/python3/dist-packages/yunohost/migrations/0021_migrate_to_bullseye.py", line 82, in run
    self.check_assertions()
  File "/usr/lib/python3/dist-packages/yunohost/migrations/0021_migrate_to_bullseye.py", line 414, in check_assertions
    raise YunohostError("migration_0021_not_buster2")
yunohost.utils.error.YunohostError: La distribution Debian actuelle n'est pas Buster ! Si vous avez déjà effectué la migration Buster->Bullseye, alors cette erreur est symptomatique du fait que la migration n'a pas été terminée correctement à 100% (sinon YunoHost aurait marqué la migration comme terminée). Il est recommandé d'étudier ce qu'il s'est passé avec l'équipe de support, qui aura besoin du log **complet** de la migration, qui peut être retrouvé dans Outils > Journaux dans la webadmin

L’interface d’administration indique la version 11.0.10.2 de Yunohost. La commande cat /etc/debian_version indique la version “11.6”.

Le journal de la migration n’indique pas d’erreur ayant interrompu la migration. Il est lisible sur cette page

L’interface dans outils/migration me propose de passer l’étape “21. Mise à niveau du système vers Debian Bullseye et YunoHost 11.x”. Dois je le faire? Est ce que les autres étapes pourront alors se poursuivre?

Merci a ceux qui liront ce message et ces logs !

hello, avais tu suivi les instructions listées ici après ta migration en debian 11? Migrer de 4.x vers 11.x | Yunohost Documentation

Bonjour,

La migration a été lancée depuis l’interface web. A la fin de celle-ci, je n’ai pas constaté d’erreur n’étant pas retourné dans l’interface d’administration et ayant seulement verifié que les services mail, xmpp et l’application nextcloud fonctionnaient.
La mise à jour du système me propose d’installer les paquets PHP 7.4 et 8.1.
La rubrique diagnostique fournit les données suivantes qui semblent confirmer que la migration vers debian et yunohost est faite.

=========================
Système de base (basesystem)
=================================

[INFO] L'architecture du serveur est oracle amd64
  - Le modèle/architecture du serveur est innotek GmbH VirtualBox

[INFO] Le serveur utilise le noyau Linux 5.10.0-20-amd64

[INFO] Le serveur utilise Debian 11.6

[INFO] Le serveur utilise YunoHost 11.0.10.2 (stable)
  - yunohost version : 11.0.10.2 (stable)
  - yunohost-admin version : 11.0.11 (stable)
  - moulinette version : 11.0.9 (stable)
  - ssowat version : 11.0.9 (stable)



=================================
Connectivité Internet (ip)
=================================

[ERROR] Le serveur ne semble pas du tout connecté à Internet !?



=================================
Enregistrements DNS (dnsrecords)
=================================

[SUCCESS] Les enregistrements DNS sont correctement configurés pour le domaine maindomain.tld (catégorie basic)

[SUCCESS] Les enregistrements DNS sont correctement configurés pour le domaine maindomain.tld (catégorie mail)

[WARNING] Certains enregistrements DNS sont manquants ou incorrects pour le domaine maindomain.tld (catégorie xmpp)
  - Veuillez consulter la documentation disponible ici https://yunohost.org/dns_config si vous avez besoin d'aide pour configurer les enregistrements DNS.
  - Selon la configuration DNS recommandée, vous devez ajouter un enregistrement DNS
    Type : SRV
    Nom : _xmpp-client._tcp
    Valeur : 0 5 5222 maindomain.tld.
  - Selon la configuration DNS recommandée, vous devez ajouter un enregistrement DNS
    Type : SRV
    Nom : _xmpp-server._tcp
    Valeur : 0 5 5269 maindomain.tld.
  - Selon la configuration DNS recommandée, vous devez ajouter un enregistrement DNS
    Type : CNAME
    Nom : muc
    Valeur : maindomain.tld.
  - Selon la configuration DNS recommandée, vous devez ajouter un enregistrement DNS
    Type : CNAME
    Nom : pubsub
    Valeur : maindomain.tld.
  - Selon la configuration DNS recommandée, vous devez ajouter un enregistrement DNS
    Type : CNAME
    Nom : vjud
    Valeur : maindomain.tld.
  - Selon la configuration DNS recommandée, vous devez ajouter un enregistrement DNS
    Type : CNAME
    Nom : xmpp-upload
    Valeur : maindomain.tld.

[WARNING] Certains enregistrements DNS sont manquants ou incorrects pour le domaine maindomain.tld (catégorie extra)
  - Veuillez consulter la documentation disponible ici https://yunohost.org/dns_config si vous avez besoin d'aide pour configurer les enregistrements DNS.
  - Selon la configuration DNS recommandée, vous devez ajouter un enregistrement DNS
    Type : A
    Nom : *
    Valeur :  WWW.XXX.YYY.ZZZ
  - Selon la configuration DNS recommandée, vous devez ajouter un enregistrement DNS
    Type : CAA
    Nom : @
    Valeur : 128 issue "letsencrypt.org"

[SUCCESS] Vos domaines sont enregistrés et ne vont pas expirer prochainement.
  - maindomain.tld expire dans 44 jours.



=================================
Exposition des ports (ports)
=================================

[ERROR] Le port 25 n'est pas accessible depuis l'extérieur.
  - Rendre ce port accessible est nécessaire pour les fonctionnalités de type email (service postfix)
  - Pour résoudre ce problème, vous devez probablement configurer la redirection de port sur votre routeur Internet comme décrit dans https://yunohost.org/isp_box_config

[ERROR] Le port 80 n'est pas accessible depuis l'extérieur.
  - Rendre ce port accessible est nécessaire pour les fonctionnalités de type web (service nginx)
  - Pour résoudre ce problème, vous devez probablement configurer la redirection de port sur votre routeur Internet comme décrit dans https://yunohost.org/isp_box_config

[SUCCESS] Le port 443 est accessible depuis l'extérieur.
  - Rendre ce port accessible est nécessaire pour les fonctionnalités de type web (service nginx)

[ERROR] Le port 587 n'est pas accessible depuis l'extérieur.
  - Rendre ce port accessible est nécessaire pour les fonctionnalités de type email (service postfix)
  - Pour résoudre ce problème, vous devez probablement configurer la redirection de port sur votre routeur Internet comme décrit dans https://yunohost.org/isp_box_config

[ERROR] Le port 993 n'est pas accessible depuis l'extérieur.
  - Rendre ce port accessible est nécessaire pour les fonctionnalités de type email (service dovecot)
  - Pour résoudre ce problème, vous devez probablement configurer la redirection de port sur votre routeur Internet comme décrit dans https://yunohost.org/isp_box_config

[SUCCESS] Le port 5222 est accessible depuis l'extérieur.
  - Rendre ce port accessible est nécessaire pour les fonctionnalités de type xmpp (service metronome)

[SUCCESS] Le port 5269 est accessible depuis l'extérieur.
  - Rendre ce port accessible est nécessaire pour les fonctionnalités de type xmpp (service metronome)



=================================
Web (web)
=================================

[ERROR] Le domaine maindomain.tld est inaccessible en HTTP depuis l'extérieur.
  - Expiration du délai en essayant de contacter votre serveur depuis l'extérieur. Il semble être inaccessible.
    1. La cause la plus fréquente pour ce problème est que les ports 80 et 443  ne sont pas correctement redirigés vers votre serveur.
    2. Vous devriez également vérifier que le le service nginx est en cours d'exécution
    3. Pour les installations plus complexes, assurez-vous qu'aucun pare-feu ou reverse-proxy n'interfère.



=================================
Email (mail)
=================================

[ERROR] Le port sortant 25 semble être bloqué. Vous devriez essayer de le débloquer dans le panneau de configuration de votre fournisseur de services Internet (ou hébergeur). En attendant, le serveur ne pourra pas envoyer des emails à d'autres serveurs.
  - Vous devriez d'abord essayer d'ouvrir le port 25 dans l'interface de votre routeur, box Internet ou interface d'hébergement. (Certains hébergeurs peuvent vous demander d'ouvrir un ticket sur leur support d'assistance pour cela).
  - Certains opérateurs ne vous laisseront pas débloquer le port 25 parce qu'ils ne se soucient pas de la neutralité du Net.
     - Certains d'entre eux offrent la possibilité d'utiliser un serveur de messagerie relai bien que cela implique que celui-ci sera en mesure d'espionner le trafic de votre messagerie.
     - Une alternative respectueuse de la vie privée consiste à utiliser un VPN *avec une IP publique dédiée* pour contourner ce type de limites. Voir https://yunohost.org/#/vpn_advantage
     - Vous pouvez également envisager de passer à un fournisseur plus respectueux de la neutralité du net

[ERROR] Le serveur de messagerie SMTP est inaccessible de l'extérieur en IPv4. Il ne pourra pas recevoir des emails.
  - Impossible d'ouvrir une connexion sur le port 25 à votre serveur en IPv4. Il semble inaccessible. 
     1. La cause la plus courante de ce problème est que le port 25 n'est pas correctement redirigé vers votre serveur. 
     2. Vous devez également vous assurer que le service postfix est en cours d'exécution. 
     3. Sur les configurations plus complexes: assurez-vous qu'aucun pare-feu ou proxy inversé n'interfère.

[ERROR] Le reverse-DNS n'est pas correctement configuré en IPv4. Il se peut que certains emails ne soient pas acheminés ou soient considérés comme du spam.
  - DNS inverse actuel : WWW.XXX.YYY.ZZZ.rev.sfr.net 
     Valeur attendue : maindomain.tld
  - Vous devez d'abord essayer de configurer le reverse-DNS avec maindomain.tld dans l'interface de votre routeur, box Internet ou votre interface d'hébergement. (Certains hébergeurs peuvent vous demander d'ouvrir un ticket sur leur support d'assistance pour cela).
  - Certains opérateurs ne vous laisseront pas configurer votre reverse-DNS (ou leur fonctionnalité pourrait être cassée ...). Si vous rencontrez des problèmes à cause de cela, envisagez les solutions suivantes :
     - Certains FAI offre cette possibilité à l'aide d'un relais de serveur de messagerie bien que cela implique que le relais pourra espionner votre trafic de messagerie.
     - Une alternative respectueuse de la vie privée consiste à utiliser un VPN *avec une IP publique dédiée* pour contourner ce type de limites. Voir https://yunohost.org/#/vpn_advantage
     - Enfin, il est également possible de changer d'opérateur

[ERROR] Votre IP ou domaine WWW.XXX.YYY.ZZZ est sur liste noire sur Spamhaus ZEN
  - La raison de la liste noire est : "https://www.spamhaus.org/query/ip/WWW.XXX.YYY.ZZZ"
  - Après avoir identifié la raison pour laquelle vous êtes répertorié sur cette liste et l'avoir corrigée, n'hésitez pas à demander le retrait de votre IP ou de votre domaine sur https://www.spamhaus.org/zen/

[SUCCESS] 0 emails en attente dans les files d'attente de messagerie



=================================
État des services (services)
=================================

[SUCCESS] Le service dnsmasq est en cours de fonctionnement !

[SUCCESS] Le service dovecot est en cours de fonctionnement !

[SUCCESS] Le service fail2ban est en cours de fonctionnement !

[SUCCESS] Le service metronome est en cours de fonctionnement !

[SUCCESS] Le service mysql est en cours de fonctionnement !

[SUCCESS] Le service nginx est en cours de fonctionnement !

[SUCCESS] Le service php7.4-fpm est en cours de fonctionnement !

[SUCCESS] Le service php8.0-fpm est en cours de fonctionnement !

[SUCCESS] Le service postfix est en cours de fonctionnement !

[SUCCESS] Le service redis-server est en cours de fonctionnement !

[SUCCESS] Le service rspamd est en cours de fonctionnement !

[SUCCESS] Le service slapd est en cours de fonctionnement !

[SUCCESS] Le service ssh est en cours de fonctionnement !

[SUCCESS] Le service yunohost-api est en cours de fonctionnement !

[SUCCESS] Le service yunohost-firewall est en cours de fonctionnement !

[SUCCESS] Le service yunomdns est en cours de fonctionnement !



=================================
Ressources système (systemresources)
=================================

[SUCCESS] Le système dispose encore de 1.3 GiB (66%) de RAM sur 1.9 GiB.

[SUCCESS] Le système dispose de 976 MiB de swap !
  - Soyez averti et conscient que si vous hébergez une partition SWAP sur une carte SD ou un disque SSD, cela risque de réduire considérablement l'espérance de vie de celui-ci.

[SUCCESS] L'espace de stockage / (sur le périphérique /dev/mapper/system-root) a encore 42 GiB (9%) d'espace restant (sur 476 GiB) !

[SUCCESS] L'espace de stockage /boot (sur le périphérique /dev/sda1) a encore 117 MiB (54%) d'espace restant (sur 217 MiB) !



=================================
Configurations système (regenconf)
=================================

[WARNING] Le fichier de configuration /etc/nslcd.conf semble avoir été modifié manuellement.
  - C'est probablement OK si vous savez ce que vous faites ! YunoHost cessera de mettre à jour ce fichier automatiquement ... Mais attention, les mises à jour de YunoHost pourraient contenir d'importantes modifications recommandées. Si vous le souhaitez, vous pouvez inspecter les différences avec 'yunohost tools regen-conf nslcd --dry-run --with-diff' et forcer la réinitialisation à la configuration recommandée avec 'yunohost tools regen-conf nslcd --force'

[WARNING] Le fichier de configuration /etc/nsswitch.conf semble avoir été modifié manuellement.
  - C'est probablement OK si vous savez ce que vous faites ! YunoHost cessera de mettre à jour ce fichier automatiquement ... Mais attention, les mises à jour de YunoHost pourraient contenir d'importantes modifications recommandées. Si vous le souhaitez, vous pouvez inspecter les différences avec 'yunohost tools regen-conf nsswitch --dry-run --with-diff' et forcer la réinitialisation à la configuration recommandée avec 'yunohost tools regen-conf nsswitch --force'



=================================
Applications (apps)
=================================

[SUCCESS] Toutes les applications installées respectent les pratiques de packaging de base

Mais une partie n’est pas mise à jour lors de l’exécution du script diagnostic. Les erreurs suivantes sont renvoyées:

(Le cache est encore valide pour le diagnostic Système de base. Il ne sera pas re-diagnostiqué pour le moment !)
Échec du diagnostic pour la catégorie 'ip':
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/yunohost/diagnosis.py", line 196, in diagnosis_run
code, report = diagnoser.diagnose(force=force)
File "/usr/lib/python3/dist-packages/yunohost/diagnosis.py", line 449, in diagnose
items = list(self.run())
File "/usr/lib/python3/dist-packages/yunohost/diagnosers/10-ip.py", line 52, in run
good_resolvconf = self.good_resolvconf()
File "/usr/lib/python3/dist-packages/yunohost/diagnosers/10-ip.py", line 192, in good_resolvconf
content = read_file("/etc/resolv.conf").strip().split("\n")
File "/usr/lib/python3/dist-packages/moulinette/utils/filesystem.py", line 34, in read_file
raise MoulinetteError("file_not_exist", path=file_path)
moulinette.core.MoulinetteError: Le fichier '/etc/resolv.conf' n'existe pas
Impossible d'exécuter le diagnostic pour Enregistrements DNS alors qu'il existe des problèmes importants liés à Connectivité Internet.
Impossible d'exécuter le diagnostic pour Exposition des ports alors qu'il existe des problèmes importants liés à Connectivité Internet.
Impossible d'exécuter le diagnostic pour Web alors qu'il existe des problèmes importants liés à Connectivité Internet.
Impossible d'exécuter le diagnostic pour Email alors qu'il existe des problèmes importants liés à Connectivité Internet.
(Le cache est encore valide pour le diagnostic État des services. Il ne sera pas re-diagnostiqué pour le moment !)
(Le cache est encore valide pour le diagnostic Ressources système. Il ne sera pas re-diagnostiqué pour le moment !)
(Le cache est encore valide pour le diagnostic Configurations système. Il ne sera pas re-diagnostiqué pour le moment !)
(Le cache est encore valide pour le diagnostic Applications. Il ne sera pas re-diagnostiqué pour le moment !)

J’ai du mal à cerner le problème car je ne vois d’anomalie de fonctionnement du serveur.

Mouai ça sonne pas du tout normal que /etc/resolv.conf n’existe pas sur ton système, mais c’est un autre problème …

Pour ta migration, d’après le log elle semble effectivement avoir été interrompue, ou s’est bloquée (cf les caractères chelou à la toute fin du fichier)

Moi je recommande de faire tourner ce script qui fait ce que la migration aurait du faire à la fin …

Pour l’executer tu peux faire :

sudo su # pour devenir root si tu n'est pas déjà connecté en root
cd /root/
curl https://gist.githubusercontent.com/alexAubin/2eb588521117537c692f38a020f9b2d1/raw/ebe4f098a111caad0185e449888074571f25453e/finish_the_bullseye_migration.sh | bash

Bonjour Aleks,

Je te remercie pour ta réponse et le script. Je l’ai lancé. Après la lecture des listes de paquets, des dépendances, il réalise finalement l’installation de paquets php 7.4 et 8.1.
Lorsque je retourne sur l’interface d’administration, la page mettre à jour le système indique “Tous les packages système sont à jour !”.
La page Outils / Migrations n’est pas modifiée, indiquant encore les 4 étapes résiduelles mentionnées dans mon message initial. Lorsque je lance la migration via l’interface, j’obtiens le même message d’erreur indiquant que la version du système n’est pas buster…Manifestement puisque la version du système est bullseye.

Est ce que passer l’étape 21 permettrait de lancer les dernières étapes de la migration (22 à 24)?