Hmm: running routine updates on Ubuntu overwrote my MBR.
I had a multi-boot setup with generic boot code in the MBR, and each system booting from its own partition's boot record. During the Ubuntu install I had made sure Ubuntu's boot loader was installed in its own partition's boot record. (The installer let me do this, though it does warn against it. And it was working fine).
Yesterday Ubuntu prompted me to update packages. The updates included a grub update.
After a reboot, it seems that the update had written its own grub to the MBR.
I had to get a grub command line to manually boot to openSUSE and run
/usr/sbin/fixmbr
.
This isn't the first time that Ubuntu has messed up multi-booting on this machine, though the last time was a previous version of Ubuntu and I never worked out exactly what happened then.
This time it is 10.04, but I see there is at least one open bug (495423) for this kind of behaviour.