Well, it broke: le thread d'une MàJ foireuse

Bon. Grosso modo, j’ai voulu faire passer mon ordi de franken-buntu 18.04 à 20.04
(Même si, une fois avoir catalogué les modifs de Dell avant sortie d’usine, je pense que je vais passer à autre chose complêtement)
Maintenant, y’a plus grand chose qui marche.
Pendant ce thread, je vais essayer de comprendre ce qui a foiré, au lieu de juste sortir une liveUSB et réinstaller quelque chose.
J’appelle pas à l’aide, mais vous voulez dire un truc, libre à vous.

Premier truc. Au début, je pensais que c’était juste un problème avec la connection avec gdm (l’écran et le curseur gèlent entre l’écran de connection et la session à proprement parler, et à partir de là, Ctrl-Alt-F1~F6 sans effet, et de mémoire gdm est supposé pouvoir désactive ces touches sur un écran de verrouillage)
Mais passer de gdm à lightdm (déja installé, donc juste dpkg-reconfigure) n’a aucun effet.

Assez vite, je me suis rendu compte que certaines actions, même juste en console, pouvaient créer des problèmes.
Par exemple, certaines actions de apt, qui gèlent et (parfois) empêchent de passer à une autre console, mais sans gêner la gestions des jobs par bash(?), (genre ctrl-z, bg X, fg X) pour des raisons que je comprends pas.

ensuite (un début de réponse), je me suis rendu compte que quand je réinstalle lightdm ou gdm, des taches de post-install (les triggers avec dbus et sysd) finissent par timeout avec le nouveau kernel (5.4.0-generic), mais pas l’ancien (4.19.0-oem), ni 5.6.0-oem (que j’ai installé manuellement après)
reste à savoir si il y a un effet sur le reste.

Ah. J’ai oublié de préciser que:

  • l’interface graphique peut avoir son problème avant même d’essayer de se connecter (pas testé les combinaisons ici, mais il y a aussi un facteur « aléatoire »
  • de temps en temps (pas testé de combinaison particulière) les commandes pour éteindre/redémarrer en fonctionnent plus il faut maintenir le bouton d’alim
  • a chaque fois que Ctrl-Alt-F1~F6 ne répond plus, le clavier à l’air de ne plus répondre (en particulier les leds de capslock et numlock), et il faut maintenir le bouton d’alim pour s’en sortir
  • il y a deux-trois trucs marqués comme failed par l’écran initial de sysd, mais je sais pas si c’était le cas avant update…

OK donc j’ai réussi à me connnecter graphiquement sur un coup de bol, donc j’ai ré-essayé plusieurs combinaions session / display manager / kernel (tout était déja installé):

*/gdm/4.15 - échec
*/gdm/5.6 - réussite (allez savoir), sauf pour quelques trucs bizarres mais pas gênants, et un problème que j’avais déjà remarqué entre gdm et ma carte graphique (nvidia, même avec nouveau…)
i3/gdm/5.4 - échec. Je vais même pas essayer les autres environnements de bureau

LXQt+i3/lightdm/5.6 - le fond d’écran est set et le curseur bouge, mais le clavier n’a l’air de rien faire. Même chose pour la fermeture de capot / bouton d’alim.
i3/lightdm/5.6 - ça fonctionne, sauf que le curseur a gelé et mainenant Ctrl-Alt-F1~F6 ne répondent plus, mais le reste du clavier si?? et tout plante si je demande i3-msg exit. What?

i3/lightdm/5.4 - même chose qu’avec 5.6. Au fait, pour les deux, si je demande ctrl-alt-F[x] avant que le curseur gèle, le curseur disparaît, on passe pas en mode console, et l’ordi est coincé jusqu’à appui long sur le bouton d’alim.
i3/lightdm/4.15 - même bouzin ici

Note: le curseur peut se coincer et se décoincer au pif ~1min après. Peut-être que j’ai mal compris le comportement de certains cas précédents?
Note2: j’ai édité des messages avant pour plus de clarté

OK, encore un comportement que j’avais pas compris, à propos des actions avec apt.
oubliez tout ce que j’ai dit. Je commence de nouveaux essais.

  • lightdm/5.6 : passage en mode console, apt install --reinstall lightdm. Trigger timeout, l’opération ne se finit pas. Ctrl-Alt-F[x] fonctionne, mais plus aucun promot apparait. Le passage au mode graphique donne un écran noir et ne peut pas être annulé immédiatement.
  • lightdm/5.6 : mode console, j’ai pu passer à gdm, mais le reboot ne veut pas fonctionner. Plus de prompt, mais mainenant le kernel(je crois) balance des messages (erreurs sur le wifi par ici, tracebacks d’instructions par là, …) et ne veut pas s’éteindre.
  • gdm/5.6: lightdm et gdm veulent bien se réinstaller (entre des mesages du kernel(?) par rapport à nouveau), et le reboot fonctionne
  • gdm/5.4 : réinstallation de gdm donne des trigger timeout (sysd uniquement. hm.) mais je peux toujours taper des commandes après. la réinstallation de lighdmne se finit pas. Ctrl-C ne marche pas, mais Ctrl-Alt-F[x] fonctionne à moitié (il de demande pas de mot de passe une fois le nom tapé)
  • gdm/5.4 : dpkg --configure -a nécessaire au début, une poignée de mesages du kernel (soit ça soit sysd en tout cas. les messages qui commencent avec le nombre de secondes d’uptime entre crochets). gdm ne se réinstalle pas completement, même problème qu’avec lightdm/5.6

je commence à me rendre compte qu’il y a beaucoup trop de facteurs en jeu. Je vais regarder les journaux plus tôt que prévu.
…Je commence à comprendre que je m’exprime mal, et j’ai sans doute l’air con.

J’ai essayé de regarder les journaux pour comparer gdm/5.6 et gdm/5.4, pour le protocole suivant:
démarrer, atteindre l’écran de login, passer à TTY3, se connecter, attendre 100s d’uptime (avec les messages du kernel à l’écran), et systemctl poweroff. Fonctionnel sur 5.6, mais la dernière étape gèle sur 5.4 (une fois qu’il n’y a plus de prompt ni rien, juste trois messages), et demande de maintenir le bouton d’alim.

… en vrai, je ne sais pas comment m’y prendre pour comparer des logs système correctement. Vous avez des conseils pour ça? EDIT: là, j’ai des logs complets des deux allumages en question, en pretty-json, et sans quelques attributs, côte à côte via meld. Par contre je sais pas comment trouver les passages importants des logs pour trouver ce qui va pas.

ah, et je pense que je vais installer quelque chose de nouveau d’ici vendredi quoi qu’il arrive. Histoire d’être un peu prêt pour mon stage lundi prochain.

j’ai aussi récupéré les logs pour la même chose, avec lightdm/5.6. Cette fois (d’autres trucs ont changé ???), pas de massage au milieu de la console, mais poweroff ne fonctionne toujours pas.
À la toute fin, les syslogs spamment ces deux entrées en boucle. Du coup, les snaps ont quelque chose à faire dans ce bazar? Parce que si je soupçonnait quelque chose de planter, c’était pas ça.

  {
      "CODE_FILE" : "src/basic/log.c",
      "CODE_FUNC" : "log_received_signal",
      "CODE_LINE" : "1216",
      "MESSAGE" : "Received SIGINT.",
      "PRIORITY" : "6",
      "SYSLOG_FACILITY" : "3",
      "SYSLOG_IDENTIFIER" : "systemd",
      "_CAP_EFFECTIVE" : "3fffffffff",
      "_CMDLINE" : "/sbin/init splash",
      "_COMM" : "systemd",
      "_EXE" : "/lib/systemd/systemd",
      "_GID" : "0",
      "_HOSTNAME" : "lmarsh-pc",
      "_MACHINE_ID" : "f4bca3190cbd4dd1872a695d81bf3cee",
      "_PID" : "1",
      "_SELINUX_CONTEXT" : "unconfined\n",
      "_SOURCE_REALTIME_TIMESTAMP" : "1588159696326254",
      "_SYSTEMD_CGROUP" : "/init.scope",
      "_SYSTEMD_SLICE" : "-.slice",
      "_SYSTEMD_UNIT" : "init.scope",
      "_TRANSPORT" : "journal",
      "_UID" : "0",
   },
   {
      "CODE_FILE" : "src/core/job.c",
      "CODE_FUNC" : "job_log_done_status_message",
      "CODE_LINE" : "876",
      "INVOCATION_ID" : "",
      "JOB_ID" : "5852",
      "JOB_RESULT" : "done",
      "JOB_TYPE" : "start",
      "MESSAGE" : "Condition check resulted in Ubuntu core (all-snaps) system shutdown helper setup service being skipped.",
      "MESSAGE_ID" : "39f53479d3a045ac8e11786248231fbf",
      "PRIORITY" : "6",
      "SYSLOG_FACILITY" : "3",
      "SYSLOG_IDENTIFIER" : "systemd",
      "UNIT" : "snapd.system-shutdown.service",
      "_CAP_EFFECTIVE" : "3fffffffff",
      "_CMDLINE" : "/sbin/init splash",
      "_COMM" : "systemd",
      "_EXE" : "/lib/systemd/systemd",
      "_GID" : "0",
      "_HOSTNAME" : "lmarsh-pc",
      "_MACHINE_ID" : "f4bca3190cbd4dd1872a695d81bf3cee",
      "_PID" : "1",
      "_SELINUX_CONTEXT" : "unconfined\n",
      "_SOURCE_REALTIME_TIMESTAMP" : "1588159696331209",
      "_SYSTEMD_CGROUP" : "/init.scope",
      "_SYSTEMD_SLICE" : "-.slice",
      "_SYSTEMD_UNIT" : "init.scope",
      "_TRANSPORT" : "journal",
      "_UID" : "0",
   }

OK, en vrai, je pense que je vais pas réussir à aller beaucoup plus loin.
Est-ce que quelqu’un ici à un conseil, et/ou est-ce que vous voulez vraiment voir la suite de ce bouzin?

Si non, je pense que je vais installer autre chose demain.
A plus.