Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I have a bit of an unusual problem. I've installed lubuntu 12.10 AMD64 on my system, placing / and /boot on an SSD and the rest on a hard disk. Everything except /boot is encrypted. All was well until the SSD started producing I/O errors. It appears I'm going to have to return it for replacement, which means being without it for a few weeks.

As a substitute I copied everything from / and /boot onto an SD card, installed grub on it (grub-install /dev/sdf), and figured I could use the SD card as my boot disk until the replacement SSD arrives. However, Grub doesn't seem to agree - once the SSD is disconnected and the system powered on again, Grub boots from the SD card, but only says:

error: no such device: 5ab2e581-some-guid.
grub rescue>

I don't recognize that GUID it's complaining about - it's not in grub.cfg, grubenv, or any other text files I found in /boot, and sudo blkid doesn't show it.

Piecing together what information I could find about this prompt I came up with the following set of commands that seemed like they should be able to boot the kernel manually from here:

set root=(hd0,msdos1)/boot
set prefix=(hd0,msdos1)/boot/grub
insmod linux
linux (hd0,msdos1)/boot/vmlinuz-3.5.0-26-generic root=/dev/sde1 rootdelay=5
boot

but the kernel doesn't seem to notice the SD card, and fails saying I need to provide an appropriate root= parameter and giving a list of available partitions - except the list is empty.

If, on the other hand, I do:

set root=(hd0,msdos1)/boot
set prefix=(hd0,msdos1)/boot/grub
insmod linux
linux (hd0,msdos1)/boot/vmlinuz-3.5.0-26-generic
initrd (hd0,msdos1)/boot/initrd.img-3.5.0-26-generic
boot

it boots into an initrd image where I can see my SD card (on /dev/sde1, not /dev/sdf1, which is where I got sde1 in the above commands), but it doesn't appear there's any way to boot it from here either.

I don't know what I've missed here - what is this unknown GUID grub is looking for, and why isn't it able to find and boot the kernel on the SD card?

share|improve this question
    
How did you copy / and boot? At least one of the UUIDs have, apparently changed, and you'll need access to /etc/fstab in the / parttion to fix it. /etc/fstab contains the old UUIDs that Grub expects to find. You can use tune2fs -U to reset UUIDs. –  mikewhatever Apr 9 '13 at 10:38
    
How did you format your sd card? Is it FAT or EXT4 or NFTS? –  Misery Apr 9 '13 at 10:46
    
The card is formatted as ext4. I'll update the UUIDs in /etc/fstab and try again, though the one listed there isn't the 5ab2... grub complains about. I really have no idea where that one comes from. –  Rena Apr 9 '13 at 12:16
    
Nope, updating /etc/fstab didn't help. –  Rena Apr 9 '13 at 12:32
add comment

1 Answer 1

up vote 0 down vote accepted

Well, I did manage to get this working, in a way... I gave up trying to fix grub on the SD card and installed a brand new lubuntu install on it, then copied everything from the old system's root over it. The main issue was having to edit /etc/fstab and /etc/crypttab to deal with different GUIDs and device paths. (Since /dev/sda was removed, everything got shifted up a letter.) After doing that, it runs at least, though I suspect some things didn't mesh entirely nicely, as I get a lot of errors from .bashrc (or somewhere?) when opening a terminal now... but things seem to be working, anyway.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.