First I greatly appreciate all this information as the idea is to fix a problem I probably created long ago though I am not sure how but the short story is that apt-get upgrade ran update-grub and update-initramfs late last Fall and I was able to rescue it but it happened again at the end of April so I figured I had better fix it correctly since I didn't know it was a ticking bomb.
Felix Miata <mrma...@earthlink.net> writes: > Martin McCormick composed on 2021-06-05 12:46 (UTC-0500): > > > I have a plan but I need some more information. Is there any > > personalization done by the boot setup process? Do our UUID's > > or any other specific information pertaining to the installation > > make it in to the initrd files? > > Dracut includes a root=UUID=<UUID> statement in the initrd. A root= > statement on > the Grub linu* line overrides it. The override can be any of the accepted > forms, > including root=LABEL= and root=<device name>. Good to know. > The translation is easy. UUIDs are assigned to devices. The device names > are > acceptable substitutes, just as they used to be the only option before > libata made > device names capable of playing musical chairs. If devices also have > labels, > labels can be used instead of device names. Very much like the reasoning behind udev which is a God-send if you have multiple sound cards as one example. > UUIDs were designed for computer scripts, not human brains. You'll need > to make a > conversion, but instead of UUIDs, I highly recommend using labels when > you know > device names will be different on the system migrated to. UUIDs are > appropriate > too, just rather unwieldy unless scripted. There's 1 UUID for the root file system in /boot/grub/grub.cfg which is the file one must not normally edit by hand. It reads menuentry 'Debian GNU/Linux' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-658da8df-942e-4ad7-8c5b-695f2f2eb4ed' { > Grub provides a shell. From the shell it's possible to boot using the > information > you have. Instead of trying to figure it all out in advance, drop to the > shell and > use the device names you know. It's really not hard if you have a copy of > a grub > menu from the two PCs planted in your brain or on paper. Once you've > booted, it's > easy to fix everything up by running grub-mkconfig, and if necessary, > /etc/default/grub. > > > As an aside, one ought to be able to do something like > > this. It makes life a lot simpler. Both systems are using the > > same kernel and versions of the same processor the only real > > differences are the UUID's. The grub configurations of both are > > the same down to the serial console. > > Don't let the massive volume of data in grub.cfg mislead you. Its primary > job is > to find and load a kernel and initrd. If you know where they are and > their names, > none of the menu components or apparent search and identification bloat > are > necessary. Before Grub2 you could simply tell Grub's shell the root > device, the > kernel name (with associated parameters, most of which aren't actually > necessary), > and the initrd name, then boot. With Grub2 you may need to precede the > root device > name with loading a module or two or three, which you see in your copy of > a > grub.cfg, then proceed with the important three. I do a lot of cloning, > so I've > done it often. Thanks again. I was starting to get discouraged but I will try using actual labels since I thought you really shouldn't do that. Martin