You are not logged in.
Pages: 1
Hi.
Unfortunely, Arch Linux don't work for me.
I tried to fix the Grub Error 15, without success.
I have two hard disks, one installed in /dev/sda (with Ubuntu)
the other in /dev/sdb and it is where I want to install Arch.
As I do not want complications, simply i assigned /dev/sdb1 to "/" and /dev/sdb5 to swap. /home /boot /etc and other directories are in the same partition as /.
The kernel are in the /boot directory, the files are /boot/vmlinuz26 and /boot/initrd.img (i don't remember the exact name of this last .img file)
My menu.lst are as following
default 0
timeout 3
title Arch Linux
root (hd1,0)
kernel /boot/vmlinuz26 root=/dev/sdb1 ro
initrd /boot/initrd26.img
However, always shows me the Grub Error 15 (File not found).
I enter to the Grub command line
grub > root (hd1,0)
Filesystem is ext3, partition type 0x83
grub > setup (hd1)
Checking if '/boot/grub/stage1' exists... yes
Other checkings (I don't remember which now) also passed and exists (they say "Checking if 'file' exists..... yes").
But when I boot from the second hard disk, the boot fails and the damn grub error 15 appears.
Nothing and none of the tutorials that I found in Google works.
What i'm doing bad?
Thanks!
EDIT:
Here is a summary of check with efsck, to discard failures on the disk, however, had many attempts with error when reading certain blocks like this
Error reading block 2163066 (Attempt to read block from filesystem resulted in short read) when getting the next node -i to examine
¿Ignore error? Yes
¿Force rewrite? Yes
Summary:
36215 inodes used (0.76%)
38 non-contiguous inodes (0.1%)
# of inodes with ind/dind/tind blocks: 1173/8/0
471916 blocks used (2.48%)
0 bad blocks
1 large file
30943 regular files
3551 directories
3 character device files
0 block device files
0 fifos
1469 links
1709 symbolic links (1709 fast symbolic links)
0 sockets
--------
37675 files
Last edited by El-Dani (2009-02-21 03:49:55)
Offline
How are you booting from the second HDD? If you are choosing it in your BIOS' boot menu, FI, you probably want to boot from hd0,0.
Last edited by cerbie (2009-02-21 05:55:58)
"If the data structure can't be explained on a beer coaster, it's too complex." - Felix von Leitner
Offline
But my PC recognizes both HDDs as sda (in the computer) and sdb (which is an external HDD). Sdb always will be the second HDD, therefore it must be hd1,0, right?
Thanks for your time.
Offline
Here is mi menu.lst (i mounted the partition in Ubuntu to see it)
title Arch Linux
root (hd1,0)
kernel /boot/vmlinuz26 root=/dev/sdb1 ro
initrd /boot/kernel26.img
both vmlinuz and kernel26 exists in the /boot directory.
Last edited by El-Dani (2009-02-21 14:25:55)
Offline
I have news.... bad news
I changed hd1,0 by hd0,0 in menu.lst...
And thousands of errors appears.
ERROR: Failed to parse block device name for '/dev/sdb1'
I don't know what more to do.
Offline
The suspicious part is this line
initrd /boot/initrd26.img
Unless something has changed the default for arch is to have that file named /boot/kernel26.img. If that really is the correct name for the initrd image then I'm not seeing anything obvious. If you have arch on sdb1 then it is correct to use hd1,0 not hd0,0
Offline
device name for '/dev/sdb1'
You are using the SATA hard drive (sd), second hard drive (b), first partition (1). In grub nomenclature, this becomes "hd1,0", which means: "hard drive (hd), second hard drive (1), first partition (0)."
root (hd1,0)
setup (hd0)
Markku
Offline
The suspicious part is this line
initrd /boot/initrd26.img
Unless something has changed the default for arch is to have that file named /boot/kernel26.img. If that really is the correct name for the initrd image then I'm not seeing anything obvious. If you have arch on sdb1 then it is correct to use hd1,0 not hd0,0
Ditto, that is at least one error, it should be
kernel /vmlinuz26 root=/dev/sda2 ro vga=795
initrd /kernel26.img
Offline
Using UUIDs might ease things up too .
Here is a sample from my menu.lst .
# (0) Arch Linux
title Arch Linux
root (hd0,7)
kernel /boot/vmlinuz26 root=/dev/disk/by-uuid/3ddc6f71-7fc8-4f49-bfcf-606ac6084e05 ro
initrd /boot/kernel26.img
English is not my native language .
Offline
nevermind me...didn't check if it was the OP...:rolleyes:
Last edited by cerbie (2009-02-22 02:45:48)
"If the data structure can't be explained on a beer coaster, it's too complex." - Felix von Leitner
Offline
I typed these commands in grub command line
root (hd1,0)
setup (hd0)
... and then?
I not understand why appears the same error. Mi menu lst is here
title Arch Linux
root (hd1,0)
kernel /boot/vmlinuz26 root=/dev/sdb1 ro
initrd /boot/kernel26.img
vmlinux26 and kernel26.img exists in /boot directory. I want to boot from first partition of second hard disk, which are sdb1.
Are there other way to boot Arch? (which is installed in the second hard disk, in sdb1)... maybe editing the grub using to boot Ubuntu? (Ubuntu is installed in sda1)
Is valid simply adding the lines of my menu.lst described above and paste it in menu.lst of Ubuntu?
I boot Ubuntu normally from first disk, first partition. Here is the menu.lst of the disk installed with Ubuntu
title Ubuntu 8.04.2, kernel 2.6.24-16-generic
root (hd0,0)
kernel /boot/vmlinuz-2.6.24-16-generic root=UUID=5b72d0b0-af94-4e37-ba6b-13008ce75e31 ro quiet splash
initrd /boot/initrd.img-2.6.24-16-generic
As you can see, Ubuntu is in the partition /dev/sda1 (hd0,0). Can I simply adding the arch lines to this menu.lst, and boot from first disk as normally i do? I want to select booting Ubuntu or Arch.
Offline
I remember having problems like this when I was distro-hopping a while back.
As far as I can tell you are changing the disk order in the BIOS to boot either ubuntu (on one disk) or arch (on another disk).
If you are doing that then the entry in the arch menu.lst needs to be 'root (hd0,0) ' since hd(0,0) is the first partition of the disk that grub is installed on and that is where your arch install lives.
You may also want to use persistent naming of your disks, either by UUID or disk labels since swapping they disk order in the bios may cause the two disks to be detected in a different order (so what is sdb on one system may be sda on the other).
A simpler option would be to add an entry for arch onto the ubuntu menu.lst, this would mean that you don't have to faff around in the BIOS every boot. To do this I would add
title archlinux
root (hd1,0)
kernel /boot/vmlinuz26 root=/dev/sdb1 ro
initrd /boot/kernel26.img
to your ubuntu menu.lst
Note that in this case you would use (hd1,0) since the arch partition is on a different disk to the grub instance
Offline
Bad news.
Tried to copy the information of Arch in the Ubuntu grub, but the boot fails. The error ERROR: Failed to parse block device name for '/dev/sdb1' appears.
It says me that the root fs was not found.
Offline
That looks like an error from the initrd stage, which means that grub successfully launched the boot process, check that the mount point for your root (/) directory in /etc/fstab matches what you told the kernel (the root=/dev/?? parameter).
Last edited by ghostHack (2009-02-22 00:52:23)
Offline
Those lines for arch are pretty much identical to mine except for the different partion names, and those look right for your situation.
You can have both ubuntu and arch listed in the same grub menu.lst. If you didn't reinstall grub to the mbr when you installed arch you can just add this to the menu.lst from ubuntu. If Arch's grub is the one on the mbr you'll need to be in arch before you can edit things. Still you can edit the lines from the grub menu by pressing 'e' when the menu comes up.
Offline
Is your sdb by any chance a usb-drive? If so, you may need to put the 'rootdelay=8' (or something like that) on the kernel invocation line.
Also - arch _will not_ boot from (hd1,0) - ie it will not use the bootloader (grub) on sdb.
What is being used is your ubuntu grub - and you need to put the arch-entry into the ubuntu grub/menu.lst
Offline
Pages: 1