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 Ubuntu 10.10 installed on one (physical) hd and on the other one Windows. On both drives grub is installed to boot both operating systems. When I wanted to install SP1 for Win 7 I had to add a bootable flag to the partition from which Windows boots, otherwise the installation of SP1 does not work. I did so by booting into Ubuntu and using gparted to add this flag. After doing so the update for SP1 worked without any problems.

When trying to boot back into Ubuntu grub complained that it couldn't find the kernel anymore! I tried to boot into a Ubuntu minimal cd and to restore grub using chroot, update-grub and grub-install which didn't work. I still had the problem that it was Unable to boot Ubuntu putting me in some minimal system called initramfs. It seems however that the uuid of the partitions changed. I guess this happened when I added the bootflag to the windows disk.

Next thing I tried was to tell grub not to use the uuid for loading the kernel by uncommenting something in /etc/default/grub. Then I got the kernel booting but it suddenly stops (I guess when it is trying to mount the root file system) saying that the concerning uuid does not exist putting me into initramfs again. The strange thing is that there I coulnd't even manage to mount the root partition using /dev/sdb1 (on which it is in my case).

I would be glad if there is a way to restore the system again without having to reinstall it.

Update

In case anyone cares I solved this. For some reason I also reseted the BIOS and it set the SATA protocol back to IDE. It seems that there is no driver for this in initrd. So I just set it back now it works again.

share|improve this question
    
you are better of asking this on ubuntuforums.org. AU is not suited for a problem like this. –  Rinzwind Jun 29 '11 at 9:16

1 Answer 1

Ah, UUIDs for partitions. In my experience, that approach only works as long as you don't tamper with your partitions. What I have resolved to is removing every reference to the UUIDs in /etc/fstab and in Grub and then things tend to work.

Sometimes drives are named differently when you are in a minimal system, therefore you cannot mount /dev/sdb1. Try looking which partitions were found by doing

fdisk -l

Alternatively you can watch the kernel boot very careful, or use

dmesg

to show you the kernel ring buffer again...

share|improve this answer
    
Tried fdisk which was not available in initramfs.. Didn't look at dmesg so far.. –  Nils Jun 29 '11 at 7:53
    
I use /dev/sdx in /etc/fstab. –  Nils Jun 29 '11 at 7:54
    
lol and more doesn't seem to work there facepalm –  Nils Jun 29 '11 at 8:07
    
and /dev/disk/by-uuid does also not exist –  Nils Jun 29 '11 at 8:09
    
Is it possible that it couldn't load initrd properly? –  Nils Jun 29 '11 at 8:13

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.