I just installed a new SSD in my system, and I'm having numerous problems trying to boot from it.
When I try to boot, the boot-loader-loader (Intel Matrix Storage Manager) skips right over it and tries to boot from the second drive. I installed Grub to the MBR on the second drive, pointing it to the boot files on the SSD. Unfortunately, the SSD is invisible to Grub. Running ls
from the Grub rescue prompt shows only the second drive. However, if I boot from a LiveCD or flash drive, I can see and mount the SSD. I believe this is a BIOS problem, but I'm still curious.
How can my SSD show up in Ubuntu but not Grub? What is the difference between the way Grub finds filesystems and the way Ubuntu does?
You are correct that this is a BIOS problem. GRUB (by default) uses BIOS interfaces to access drives, so GRUB will list all drives that the BIOS presents to it. Why your BIOS isn't able to access the drive I can't say, but you have a few options for working around your BIOS's limitation.
You can create a separate partition for /boot, putting it on a drive that the BIOS can read from. /boot contains all of the files that need to be read before the linux kernel is loaded and can use native drivers to access devices rather than relying on the BIOS. Or you can use GRUB's native drivers with
grub-install --disk-module=foo /dev/sdX
, where /dev/sdX is a drive the BIOS can boot from and foo is one of "ata", "ohci", "uhci",or "ahci" depending on how the drive is connected (PATA, different versions of USB 1.0 or SATA respectively). All but "ata" require grub 1.99.https://wiki.debian.org/BootUsbWithGrubRescue#fnref-cc4ac999f61993f95475230c2d5041100779799e
Using
nativedisk
, all your USB devices will be detected by GRUB using GRUB's own drivers instead of data from BIOS. Once this is done, you can usels
normally inside thegrub>
console and all of your USB devices will be listed.I recently installed an SSD of my own and had my share of problems. The eventual solution was to use RAID as the SATA driver in the BIOS instead of AHCI or IDE. Setting up actual RAID disks wasn't necessary.
This way, my BIOS correctly recognized all my drives and I was able to boot to Ubuntu from the SSD. This worked on my Abit IP35 Pro motherboard. Might be worth a shot.