Linux – Arch installs but GRUB does not load

arch linuxbootgrub-legacy

I installed Arch Linux from a USB flash drive. Everything went well, no errors at all. When I rebooted, however, I got only a blank screen with a blinking cursor. No GRUB. I cannot input anything. I'm sure I followed the installation instructions properly. Can anybody suggest what might be the problem?

Edit: grub's menu.lst:

# Arch Linux
title Arch Linux
root (hd1,0)
kernel /vmlinuz26 root=/dev/disk/by-uuid/db9d5d80-d822-481e-885f-c93bf2927512 ro
initrd /kernel26.img

# Arch Linux fallback
title Arch Linux Fallback
root (hd1,0)
kernel /vmlinuz26 root=/dev/disk/by-uuid/db9d5d80-d822-481e-885f-c93bf2927512 ro
initrd /kernel26-fallback.img

A sketch of the drives and partitions, until I have a chance to boot to the USB again and get more certain details:

sda: will be Windows 7 on 1st half of drive, data partition on second. Total size 1 TB.

sdb: also 1 TB. If I recall correctly from Arch install, it has: 100MiB /boot, 256MiB swap, 20GiB /, remainder is /home. I think they're in that order, too. I believe /boot is ext2 and / and /home are ext3.

Edited to add: output of fdisk -l:

Disk /dev/sdb: 100.2 GB, 100204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units=cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes/512 bytes
I/O size (minimum/optimal): 512 bytes/512 bytes
Disk identifier: 0x00022eec

   Device Boot Start    End    Blocks  ID System
/dev/sdb1  *       1     13    104391  83 Linux
/dev/sdb2         14     46    265072+ 82 Linux swap/Solaris
/dev/sdb3         47   2596  20482875  83 Linux
/dev/sdb4       2597 121601 955907662+ 83 Linux

Best Answer

It's somewhat late now, but I just had a similar problem when installing Arch (for the first time). It turns out that for whatever reason, the package installation creates the kernel and initramfs images with different names from those used by Grub. Everything else, including UUIDs, was fine.

The default filenames I ended up with were /vmlinuz-linux (in place of /vmlinuz26) and /initramfs-linux.img (/kernel26.img) - booting from the live CD and modifying /boot/grub/menu.lst to replace the kernel and initramfs locations let me boot.

As to how this happened in the first place, I guess the Arch installation script just doesn't pass the output filenames from the kernel installation to the Grub menu creation. It's frustrating though, and not a great introduction to what is often made out to be one of the better distributions.

Related Question