ErikDeBruijn
December 27th, 2010, 01:49 PM
From one day to the other my system stopped booting properly. Since I (finally) fixed it, I wanted to share my solution. It runs on a fakeraid pair of SSD's of 60 GB each (actually a single Revodrive device, but it shows up as two devices). When Ubuntu 10.10 boots, I'm dropped to a shell.
During boot, when I removed "silent splash" from the kernel's command line, I got these messages:
[ 4.960240] scsi 6:0:0:0: Direct-Access ATA OCZ-REVODRIVE 1.20 PQ: 0 ANSI: 5
[ 4.960425] sd 6:0:0:0: [sdg] 117231408 512-byte logical blocks: (60.0 GB/55.8 GiB)
[ 4.960454] sd 6:0:0:0: Attached scsi generic sg7 type 0
[ 4.960607] sd 6:0:0:0: [sdg] Write Protect is off
[ 4.960668] sd 6:0:0:0: [sdg] Mode Sense: 00 3a 00 00
[ 4.960686] sd 6:0:0:0: [sdg] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[ 4.960859] sdg: sdg1 sdg2 < >
[ 4.961317] sdg: partition table partially beyond EOD, enabling native capacity (EOD means end of device, I think is safe to assume)
[ 4.961571] sdg: sdg1 sdg2 < >
[ 4.961970] sdg: partition table partially beyond EOD, truncated
[ 4.962080] sdg: p1 size 230468608 extends beyond EOD, truncated
[ 4.962208] sdg: p2 start 230469118 is beyond EOD, truncated
When dropping to a busybox shell, it says:
Gave up waiting for root device. Common problems:
- Boot args (cat /proc/cmdline)
- Check rootdelay= (did the system wait long enough?)
- Check root= (did the system wait for right device?)
- Missing modules (cat /proc/modules; ls /dev)
ALERT! /dev/disk/by-uuid/a0c70.....1c4d4 does not exist. Dropping to a shell!
BusyBox v1.13.3 (Ubuntu 1:1.13.3-1ubuntu11) built-in shell (ash)
Enter 'help' for a list of built-in commands.
(initramfs) _
I could boot from the USB boot device that I created from a CD image. When using the same kernel that didn't work on my installation, the USB drive would boot. So it definitely had to do with my installation, not in principe with the (fake)raid array.
I've tried MANY MANY things. After a long search I found that the "dmraid" package wasn't installed. So I did the following:
I booted from the CD. The FakeRaid array showed up as
# mkdir /mnt
# mount /dev/mapper/sil_asdfasdf1 /mnt
(where asdfasdf is the actual name of the first partion on the array)
# mount --bind /dev/ /mnt/dev
# mount --bind /proc/ /mnt/proc
# mount --bind /sys/ /mnt/sys
# chroot /mnt
# apt-get install dmraid
I had also added these lines to: /etc/initramfs-tools/modules:
raid0
dmraid
md-raid0
However, I doubt that this is what was needed (as I had that already when it didn't work, but I might be required in addition to installing dmraid)
# update-initramfs -a
After installing this, the problem was solved!! This is strange since I don't recall uninstalling this package or changing anything important, for that matter (perhaps did apt-get upgrade, but that's about it!).
If this doesn't help, try adding rootdelay=90 to your kernel command line (from grub), if it works, make it permanent as explained here:
http://ubuntuforums.org/showthread.php?t=981159&page=2
My problem shows some similarity to this: http://ubuntuforums.org/showthread.php?t=1026461
During boot, when I removed "silent splash" from the kernel's command line, I got these messages:
[ 4.960240] scsi 6:0:0:0: Direct-Access ATA OCZ-REVODRIVE 1.20 PQ: 0 ANSI: 5
[ 4.960425] sd 6:0:0:0: [sdg] 117231408 512-byte logical blocks: (60.0 GB/55.8 GiB)
[ 4.960454] sd 6:0:0:0: Attached scsi generic sg7 type 0
[ 4.960607] sd 6:0:0:0: [sdg] Write Protect is off
[ 4.960668] sd 6:0:0:0: [sdg] Mode Sense: 00 3a 00 00
[ 4.960686] sd 6:0:0:0: [sdg] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[ 4.960859] sdg: sdg1 sdg2 < >
[ 4.961317] sdg: partition table partially beyond EOD, enabling native capacity (EOD means end of device, I think is safe to assume)
[ 4.961571] sdg: sdg1 sdg2 < >
[ 4.961970] sdg: partition table partially beyond EOD, truncated
[ 4.962080] sdg: p1 size 230468608 extends beyond EOD, truncated
[ 4.962208] sdg: p2 start 230469118 is beyond EOD, truncated
When dropping to a busybox shell, it says:
Gave up waiting for root device. Common problems:
- Boot args (cat /proc/cmdline)
- Check rootdelay= (did the system wait long enough?)
- Check root= (did the system wait for right device?)
- Missing modules (cat /proc/modules; ls /dev)
ALERT! /dev/disk/by-uuid/a0c70.....1c4d4 does not exist. Dropping to a shell!
BusyBox v1.13.3 (Ubuntu 1:1.13.3-1ubuntu11) built-in shell (ash)
Enter 'help' for a list of built-in commands.
(initramfs) _
I could boot from the USB boot device that I created from a CD image. When using the same kernel that didn't work on my installation, the USB drive would boot. So it definitely had to do with my installation, not in principe with the (fake)raid array.
I've tried MANY MANY things. After a long search I found that the "dmraid" package wasn't installed. So I did the following:
I booted from the CD. The FakeRaid array showed up as
# mkdir /mnt
# mount /dev/mapper/sil_asdfasdf1 /mnt
(where asdfasdf is the actual name of the first partion on the array)
# mount --bind /dev/ /mnt/dev
# mount --bind /proc/ /mnt/proc
# mount --bind /sys/ /mnt/sys
# chroot /mnt
# apt-get install dmraid
I had also added these lines to: /etc/initramfs-tools/modules:
raid0
dmraid
md-raid0
However, I doubt that this is what was needed (as I had that already when it didn't work, but I might be required in addition to installing dmraid)
# update-initramfs -a
After installing this, the problem was solved!! This is strange since I don't recall uninstalling this package or changing anything important, for that matter (perhaps did apt-get upgrade, but that's about it!).
If this doesn't help, try adding rootdelay=90 to your kernel command line (from grub), if it works, make it permanent as explained here:
http://ubuntuforums.org/showthread.php?t=981159&page=2
My problem shows some similarity to this: http://ubuntuforums.org/showthread.php?t=1026461