[TriLUG] [eee] post-install, grub OK from external stick but not from internal SSD

Tom Roche Tom_Roche at pobox.com
Wed Apr 23 15:59:50 EDT 2008


summary: I seem to understand why to use grub instead of the BIOS'
boot selector. But how to grub-install on the eee's internal SSD?

details:

Joseph Mack Wed Apr 23 13:50:10 EDT 2008
 > your BIOS isn't finding the boot sector on /dev/hda (or /dev/sda).
 > This either means

 > o you've changed the boot settings in the BIOS

 > If you've done this, undo it.

I don't think I've done that: the BIOS>Boot settings look reasonable.
FWIW it's an AMI BIOS v02.58, and the only changes I made to that were
to disable Quick Boot (so I can hit Esc to get the Boot Selector
Popup) and Quiet Boot (so I can see the prompt to do that).

It's possible the eeeXubuntu installer did something, but if so I
wouldn't know how to undo it :-( I've read the eeeXubuntu installer is
essentially a stock Gutsy Gibbon install, FWIW.

 > Presumably somewhere in there you have a choice of places to boot.

Correct: the current BIOS Boot Device Priority (which I haven't
changed) is [CD, SSD, USB], but the point of the Boot Selector Popup
is allow choice @ runtime.

 > Possibly you have this and it isn't working, in which case try hard
 > disk only and have as one of the boot options on your hard disk's
 > menu.lst, an option to boot off the usb drive.

Booting of the SSD isn't working at all:

0 If I boot *without* the stick inserted, I get the Error 21

1 If I boot *with* the stick inserted, but don't choose to boot from
   the stick using the Boot Selector Popup, I still get the menu.lst
   from the stick (plus the stick's LED strobes madly). Then

* if I choose to boot from the stick, I get Error 15, because menu.lst
   has root=(hd0,0). If I use the grub editor to set root=(hd1,0), I
   can then boot from the stick.

* if I choose to "Normal Boot" from the SSD, I get Error 15, because
   menu.lst has root=(hd1,0). If I use the grub editor to set
   root=(hd0,0), I can then boot from the stick.

 > Presumably you could also have boot to usb flash drive only, and on
 > the flash drive's menu.lst, have an option to boot to the hard disk.
 > Ideally you'd like not to have to deal with the BIOS menu choosing
 > your boot device - it would be better to have grub menu.

Hmm ... because of the changing hd[n] above? <doh!> So it looks like
what I want to do is setup SSD:/boot/grub/menu.lst with options to

* boot from SSD, with root=(hd0,0)

* boot from first removable drive (note that the eee has only SSD and
   USB, no optical), with root=(hd1,0)

* don't use the Boot Selector Popup!

Correct?

 > o /dev/sda doesn't have a valid boot sector.

 > when you boot to /dev/sda (any way you like), re-run grub-install
 > telling it to install on the hard disk.

How to do that? /dev/sda* are there, but I get

$ sudo grub-install /dev/sda
grep: /boot/grub/partition.map: no such file or directory
/dev/sda does not have any corresponding BIOS drive.
$ sudo grub-install /dev/sda1
grep: /boot/grub/partition.map: no such file or directory
/dev/sda1 does not have any corresponding BIOS drive.
$ sudo fdisk -l

Disk /dev/sda: 4001 MB, 4001292288 bytes
255 heads, 63 sectors/track, 486 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

    Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1         300     2409718+  83  Linux
/dev/sda2             301         484     1477980   83  Linux
/dev/sda3             485         485        8032+   c  W95 FAT32 (LBA)
/dev/sda4             486         486        8032+  ef  EFI (FAT-12/16/32)

Disk /dev/sdc: 4060 MB, 4060086272 bytes
255 heads, 63 sectors/track, 493 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

    Device Boot      Start         End      Blocks   Id  System
/dev/sdc1   *           1         426     3421813+  83  Linux
/dev/sdc2             427         493      538177+   5  Extended
/dev/sdc5             427         493      538146   82  Linux swap / Solaris

TIA, Tom Roche <Tom_Roche at pobox.com>




More information about the TriLUG mailing list