You are not logged in.
Pages: 1
Hello all, I'd really like to use Arch Linux. I recently got a new computer, a Acer Aspire 4810TZ, which has a large hard drive, so I have room to experiment. I downloaded the i686 usb image, dd'd it to a flash drive, and installed arch normally; went well. I did not install a bootloader, and put everything on a ext3 partition. After updating grub in ubuntu, and booting into arch, I receive a kernel panic. It tells me it cannot locate a partition; when watching the log, it says the bios cannot be detected. Doesn't dump me to a recovery console, just freezes. Here's the grub2 options for arch:
### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Arch (on /dev/sda4)" {
insmod ext2
set root=(hd0,4)
search --no-floppy --fs-uuid --set 43bab0e1-0a07-497d-a948-103ed7d9e646
linux /boot/vmlinuz26 root=/dev/sda4
}
### END /etc/grub.d/30_os-prober ###
Does anyone have an idea how I can fix this? I also get this when using archbang, and the unofficial arch install builds (archboot?). Thanks.
EDIT: I also receive the same error with chackra, Here are two images I've token of the output; I don't believe there is any log created, because no drive is found.
Last edited by Compintuit (2010-03-19 21:32:08)
Offline
This is a shot in the dark. I not familar with grub2 at all, but doesn't seem all that different from grub. Doesn't grub start counting at 0 so your root line should be
set root=(hd0,3)
That's just a guess. Take it for what it's worth.
:)
Offline
No longer at grub2. Thanks for trying to help anyway, and I did try, but I believe I've played around a lot with the grub options. Still didn't work. I don't think grub is the weakest link here, but I could be wrong.
Offline
I've picked up that error quite a few times, and every time it was an incorrectly configured grub. It's possible that you or arch created a boot partition to contain the kernel/ramdisk whatever images, and you've set grub to look for them on the partition with the root directory instead of the boot partition.
set root=(hd0,4)
linux /boot/vmlinuz26 root=/dev/sda4
The first "root" refers to the partition with /boot, which isn't necessarily the same as sda4. The second line is where the root install files are.
Ubuntu's recent versions (starting 9.10 I think?) use grub2, which starts hard drives at 0 but partitions at 1, as stated previously. /dev/sda1 would be (hd0,0) on legacy grub but (hd0,1) on grub2; so if /dev/sda4 contains your root install files then (hd0,4) is correct as you have it on grub2 [and (hd0,3) would be grub legacy].
If you have a boot partition lets say on hd0,3, you will probably need to remove /boot from the latter line as well as changing the first one, because then grub2 would look for this:
(hd0,3)/boot when (hd0,3) IS the boot directory so /boot there does not exist.
If none of that works and you're sure it's right, you may need to specify the correct filesystem type for the partition or have the root mounting delayed by a few seconds, which I don't recall how to do but I think it's in the wiki.
Easiest way to deal with this is probably show us fdisk -l from ubuntu (with notes on what each shown partition is for certain), and the entire grub.cfg. It's entirely possible this isn't the problem, but I doubt it.
Last edited by FrozenFox (2010-04-01 16:28:32)
Offline
I only have the one partition for arch, which includes /boot . I'm very glad you think it's a misconfigured grub, as I had been wondering if upstart was different enough it worked on my hardware but not a init-style. I've tried installing with other filesystems, but none of them worked either. I'll look at delaying tomorrow.
This is my fdisk -l
Disk /dev/sda: 250.1 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x32b032b0
Device Boot Start End Blocks Id System
/dev/sda1 * 1 1459 11719386 83 Linux #ubuntu
/dev/sda2 30158 30401 1959930 5 Extended
/dev/sda3 1460 28500 217206832+ 83 Linux #home, not using with arch right now
/dev/sda4 * 28501 30157 13309852+ 83 Linux #arch attempted install
/dev/sda5 30158 30401 1959898+ 82 Linux swap / Solaris
Partition table entries are not in disk order
Complete grub.cfg:
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by /usr/sbin/grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
if [ -s /boot/grub/grubenv ]; then
have_grubenv=true
load_env
fi
set default="0"
if [ ${prev_saved_entry} ]; then
saved_entry=${prev_saved_entry}
save_env saved_entry
prev_saved_entry=
save_env prev_saved_entry
fi
insmod ext2
set root=(hd0,1)
search --no-floppy --fs-uuid --set 6182d461-8b5c-43e3-920e-77ae26f8dbda
if loadfont /usr/share/grub/unicode.pf2 ; then
set gfxmode=640x480
insmod gfxterm
insmod vbe
if terminal_output gfxterm ; then true ; else
# For backward compatibility with versions of terminal.mod that don't
# understand terminal_output
terminal gfxterm
fi
fi
if [ ${recordfail} = 1 ]; then
set timeout=-1
else
set timeout=10
fi
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/white
### END /etc/grub.d/05_debian_theme ###
### BEGIN /etc/grub.d/10_linux ###
menuentry "Ubuntu, Linux 2.6.31-20-generic" {
recordfail=1
if [ -n ${have_grubenv} ]; then save_env recordfail; fi
set quiet=1
insmod ext2
set root=(hd0,1)
search --no-floppy --fs-uuid --set 6182d461-8b5c-43e3-920e-77ae26f8dbda
linux /boot/vmlinuz-2.6.31-20-generic root=UUID=6182d461-8b5c-43e3-920e-77ae26f8dbda ro i8042.nomux quiet splash
initrd /boot/initrd.img-2.6.31-20-generic
}
menuentry "Ubuntu, Linux 2.6.31-20-generic (recovery mode)" {
recordfail=1
if [ -n ${have_grubenv} ]; then save_env recordfail; fi
insmod ext2
set root=(hd0,1)
search --no-floppy --fs-uuid --set 6182d461-8b5c-43e3-920e-77ae26f8dbda
linux /boot/vmlinuz-2.6.31-20-generic root=UUID=6182d461-8b5c-43e3-920e-77ae26f8dbda ro single
initrd /boot/initrd.img-2.6.31-20-generic
}
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
linux16 /boot/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###
### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Arch (on /dev/sda4)" {
insmod ext2
set root=(hd0,4)
search --no-floppy --fs-uuid --set d3d8c773-e9e6-40cf-aa06-f8ac6faa3968
linux /boot/vmlinuz26 root=/dev/sda4
}
### END /etc/grub.d/30_os-prober ###
### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###
Offline
It looks like you are missing the initrd line in your menu entry for Arch, which has been reported as a bug in the 30_osprober. I think it should look like:
menuentry "Arch (on /dev/sda4)" {
insmod ext2
set root=(hd0,4)
search --no-floppy --fs-uuid --set d3d8c773-e9e6-40cf-aa06-f8ac6faa3968
linux /boot/vmlinuz26 root=/dev/sda4
initrd /boot/kernel26.img
}
You may have to disable the osprober and write a 40_custom rule.
Offline
Pages: 1