It says something about osmc’s reliability that despite all the crazy things I’ve been doing with it this is the first time anything has ever gone wrong with it, after many years of usage. Even the lirc transition was painless, despite my putting it off for ages in the certainty that it would be a disaster and I’d have to reprogram my remote control again. No! Amazing!
… but I just upgraded to Buster, and, um, things did not go well.
I didn’t expect things to go exactly perfectly since I’m using my own OSMC build with an epoch attached[1] (and i haven’t rebuilt yet), so I’d expect OSMC to fail to start until I rebuilt it – but I didn’t expect what I actually saw, which was a complete failure to bring up the network (so none of my NFS mounts came up, NTP couldn’t come up, and I couldn’t ssh in to diagnose anything). A sad-face boot loop (but not apparently a reboot loop) soon followed, of course, likely due to the un-upgraded osmc, but with no network and no console I can’t really fix that. The network is actually wifi, but it comes over Ethernet from a Netgear wifi router so it appears as straight Ethernet with working DHCP.
I’m not aware of any way to interrupt the boot to get a console, so I attached the SD card to a working machine to try to diagnose it, and found no useful logs at all! /var/log has only a few logs from the upgrade, all of which look perfectly OK: fontconfig.log, alternatives.log and dpkg.log. No boot log. There is no /etc/network/interfaces at all: I guess connman is meant to be bringing it up? I do see working DHCPDISCOVERs and acks on the DHCP server, so I guess it’s getting an IP address, but with no logs I can’t see what’s going wrong after that. There is no sign of a systemd journal either.
There is a lot of whining in /var/log/apt/term.log, where dpkg is asking curses-mode questions about openssh-server and is just randomly striking ‘q’ until the installation continues. I’m not sure if that’s the only problem, because I don’t know how to get a rescue console or how to get the osmc splash screen out of the way so I can do some proper diagnosis on a running system.
I believe from the contents of checkmodifier.c that holding down a control key on the console terminal at boot should give me a shell, but this doesn’t appear to be documented. I will give it a try in umpty hours once OSMC has rebuilt.
(Some logs in http://www.esperi.org.uk/~nix/temporary/logs.tar.gz: can add more on request.)
[1] it’s got a patch attached which uses a stored procedure to create the mariadb database – I’m still using an old mysql 5.7 as the server, so I’m expecting to have to upgrade that too, not my favourite thing ever… for now so I can get things back up and running without also having to upgrade other things at the same time, I’ve tweaked the kodi configure flags back in my local build to turn mysql on again. lazy, moi? (yes. that’s why I’m building kodi from scratch in an osmc build tree in a containerized “installation” of Debian atop a totally different distro on the host system. doesn’t everyone do that? )