Bug#565486: grub-pc: can't boot from partition of higher number than partition beyond bios limit

Arthur Marsh arthur.marsh at internode.on.net
Sat Jan 16 09:36:41 UTC 2010


Package: grub-pc
Version: 1.98~20100110-1
Severity: normal


I have both a 320 GB and a 40 GB hard disk (hda and hdb respectively) on a 
machine with a BIOS that has a 32 GiB limit for seeing hard disks:

victoria:/home/amarsh04# fdisk -l /dev/hda
GNU Fdisk 1.2.3
Copyright (C) 1998 - 2006 Free Software Foundation, Inc.
This program is free software, covered by the GNU General Public License.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.


Disk /dev/hda: 320 GB, 320070320640 bytes
255 heads, 63 sectors/track, 38913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/hda1   *           1        1044     8385898   83  Linux
/dev/hda2            1045       38913   304174710    f  Extended LBA
/dev/hda7            1045       34462   268422052   83  Linux
Warning: Partition 7 does not end on cylinder boundary.
/dev/hda6           34463       38639    33543720   1b  Hidd FAT32
Warning: Partition 6 does not end on cylinder boundary.
/dev/hda5           38640       38913     2192872   82  Linux swap
Warning: Partition 5 does not end on cylinder boundary.

amarsh04 at victoria:~$ fdisk -l /dev/hdb
-bash: fdisk: command not found
amarsh04 at victoria:~$ su
Password:
victoria:/home/amarsh04# fdisk -l /dev/hdb
GNU Fdisk 1.2.3
Copyright (C) 1998 - 2006 Free Software Foundation, Inc.
This program is free software, covered by the GNU General Public License.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.


Disk /dev/hdb: 40 GB, 40057113600 bytes
255 heads, 63 sectors/track, 4870 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/hdb1   *           1        1785    14337981   1c  Hidd FAT32 LBA
/dev/hdb2            1786        4040    18105255    f  Extended LBA
/dev/hdb5            1786        3313    12265627   83  Linux
Warning: Partition 5 does not end on cylinder boundary.
/dev/hdb6            3314        3428      915705   82  Linux swap
Warning: Partition 6 does not end on cylinder boundary.
/dev/hdb7            3429        4040     4907857   1b  Hidd FAT32
Warning: Partition 7 does not end on cylinder boundary.
/dev/hdb3            4041        4870     6658942   83  Linux


This version of grub already boots from the 320 GB hda disk by using a /boot
partition /hda1 that is within the 32GiB limit and has other higher numbered
partitions (hda5, hda6, hda7 within an extended LBA hda2), so it can boot
from a disk larger than what the BIOS can see, but I have the problem that
I can't boot from hdb5, as there is a lower numbered partition hdb3 that is
beyond the 32 GiB limit.

When at the grub prompt at boot-up, ls returns the following parts of the
second 40 GB hdb disk:

(hd1) (hd1,3) (hd1,1)

When I do an ls from grub-emu I see:

(hd0) (hd0,7) (hd0,6) (hd0,5) (hd0,1) 

from the 320 GB hda disk and:

(hd1) (hd1,7) (hd1,6) (hd1,5) (hd1,3) (hd1,1)

from the 40 GB hdb disk.

ls (hd1,5) reports:

        Partition hd1,5: Filesystem type ext2 - Last modification time 2010-01-1
3 08:21:48 Wednesday, UUID 026a3f5c-0064-4ae7-869e-519d2cee05e7

but when I attempt to boot using the kernel on this partition, I get a 
messsage that the UUID listed above is not found.




-- Package-specific info:

*********************** BEGIN /proc/mounts
/dev/disk/by-uuid/96c96a61-8615-4715-86d0-09cb8c62638c / ext3 rw,relatime,errors=remount-ro,data=ordered 0 0
/dev/hda1 /boot ext3 rw,relatime,errors=continue,data=ordered 0 0
/dev/hda6 /victoria vfat rw,relatime,uid=65534,gid=65534,fmask=0000,dmask=0000,allow_utime=0022,codepage=cp437,iocharset=utf8,shortname=mixed,errors=remount-ro 0 0
/dev/sda /mnt/usb8gig vfat rw,nosuid,nodev,noexec,relatime,uid=65534,gid=65534,fmask=0000,dmask=0000,allow_utime=0022,codepage=cp437,iocharset=utf8,shortname=win95,flush,errors=remount-ro 0 0
/dev/sdb1 /scsic vfat rw,relatime,uid=65534,gid=65534,fmask=0000,dmask=0000,allow_utime=0022,codepage=cp437,iocharset=utf8,shortname=mixed,errors=remount-ro 0 0
/dev/sdb5 /scsid vfat rw,relatime,uid=65534,gid=65534,fmask=0000,dmask=0000,allow_utime=0022,codepage=cp437,iocharset=utf8,shortname=mixed,errors=remount-ro 0 0
*********************** END /proc/mounts

*********************** BEGIN /boot/grub/device.map
(hd0)	/dev/hda
(hd1)	/dev/hdb
(hd2)	/dev/sda
(hd3)	/dev/sdb
*********************** END /boot/grub/device.map

*********************** BEGIN /boot/grub/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 ###
set default=2
insmod ext2
set root=(hd0,7)
search --no-floppy --fs-uuid --set 96c96a61-8615-4715-86d0-09cb8c62638c
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
set locale_dir=/boot/grub/locale
set lang=
insmod gettext
set timeout=5
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
insmod ext2
set root=(hd0,1)
search --no-floppy --fs-uuid --set bfdeb6d6-0b77-4beb-a63d-bdc3e455b8ea
insmod png
if background_image /grub/moreblue-orbit-grub.png ; then
  set color_normal=black/black
  set color_highlight=magenta/black
else
  set menu_color_normal=cyan/blue
  set menu_color_highlight=white/blue
fi
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry "Debian GNU/Linux, with Linux 2.6.32-trunk-686" {
	insmod ext2
	set root=(hd0,1)
	search --no-floppy --fs-uuid --set bfdeb6d6-0b77-4beb-a63d-bdc3e455b8ea
	echo	Loading Linux 2.6.32-trunk-686 ...
	linux	//vmlinuz-2.6.32-trunk-686 root=UUID=96c96a61-8615-4715-86d0-09cb8c62638c ro  
	echo	Loading initial ramdisk ...
	initrd	//initrd.img-2.6.32-trunk-686
}
menuentry "Debian GNU/Linux, with Linux 2.6.32-trunk-686 (recovery mode)" {
	insmod ext2
	set root=(hd0,1)
	search --no-floppy --fs-uuid --set bfdeb6d6-0b77-4beb-a63d-bdc3e455b8ea
	echo	Loading Linux 2.6.32-trunk-686 ...
	linux	//vmlinuz-2.6.32-trunk-686 root=UUID=96c96a61-8615-4715-86d0-09cb8c62638c ro single 
	echo	Loading initial ramdisk ...
	initrd	//initrd.img-2.6.32-trunk-686
}
menuentry "Debian GNU/Linux, with Linux 2.6.32" {
	insmod ext2
	set root=(hd0,1)
	search --no-floppy --fs-uuid --set bfdeb6d6-0b77-4beb-a63d-bdc3e455b8ea
	echo	Loading Linux 2.6.32 ...
	linux	//vmlinuz-2.6.32 root=UUID=96c96a61-8615-4715-86d0-09cb8c62638c ro  
	echo	Loading initial ramdisk ...
	initrd	//initrd.img-2.6.32
}
menuentry "Debian GNU/Linux, with Linux 2.6.32 (recovery mode)" {
	insmod ext2
	set root=(hd0,1)
	search --no-floppy --fs-uuid --set bfdeb6d6-0b77-4beb-a63d-bdc3e455b8ea
	echo	Loading Linux 2.6.32 ...
	linux	//vmlinuz-2.6.32 root=UUID=96c96a61-8615-4715-86d0-09cb8c62638c ro single 
	echo	Loading initial ramdisk ...
	initrd	//initrd.img-2.6.32
}
menuentry "Debian GNU/Linux, with Linux 2.6.31-1-686" {
	insmod ext2
	set root=(hd0,1)
	search --no-floppy --fs-uuid --set bfdeb6d6-0b77-4beb-a63d-bdc3e455b8ea
	echo	Loading Linux 2.6.31-1-686 ...
	linux	//vmlinuz-2.6.31-1-686 root=UUID=96c96a61-8615-4715-86d0-09cb8c62638c ro  
	echo	Loading initial ramdisk ...
	initrd	//initrd.img-2.6.31-1-686
}
menuentry "Debian GNU/Linux, with Linux 2.6.31-1-686 (recovery mode)" {
	insmod ext2
	set root=(hd0,1)
	search --no-floppy --fs-uuid --set bfdeb6d6-0b77-4beb-a63d-bdc3e455b8ea
	echo	Loading Linux 2.6.31-1-686 ...
	linux	//vmlinuz-2.6.31-1-686 root=UUID=96c96a61-8615-4715-86d0-09cb8c62638c ro single 
	echo	Loading initial ramdisk ...
	initrd	//initrd.img-2.6.31-1-686
}
menuentry "Debian GNU/Linux, with Linux 2.6.31" {
	insmod ext2
	set root=(hd0,1)
	search --no-floppy --fs-uuid --set bfdeb6d6-0b77-4beb-a63d-bdc3e455b8ea
	echo	Loading Linux 2.6.31 ...
	linux	//vmlinuz-2.6.31 root=UUID=96c96a61-8615-4715-86d0-09cb8c62638c ro  
	echo	Loading initial ramdisk ...
	initrd	//initrd.img-2.6.31
}
menuentry "Debian GNU/Linux, with Linux 2.6.31 (recovery mode)" {
	insmod ext2
	set root=(hd0,1)
	search --no-floppy --fs-uuid --set bfdeb6d6-0b77-4beb-a63d-bdc3e455b8ea
	echo	Loading Linux 2.6.31 ...
	linux	//vmlinuz-2.6.31 root=UUID=96c96a61-8615-4715-86d0-09cb8c62638c ro single 
	echo	Loading initial ramdisk ...
	initrd	//initrd.img-2.6.31
}
menuentry "Debian GNU/Linux, with Linux 2.6.30-2-686" {
	insmod ext2
	set root=(hd0,1)
	search --no-floppy --fs-uuid --set bfdeb6d6-0b77-4beb-a63d-bdc3e455b8ea
	echo	Loading Linux 2.6.30-2-686 ...
	linux	//vmlinuz-2.6.30-2-686 root=UUID=96c96a61-8615-4715-86d0-09cb8c62638c ro  
	echo	Loading initial ramdisk ...
	initrd	//initrd.img-2.6.30-2-686
}
menuentry "Debian GNU/Linux, with Linux 2.6.30-2-686 (recovery mode)" {
	insmod ext2
	set root=(hd0,1)
	search --no-floppy --fs-uuid --set bfdeb6d6-0b77-4beb-a63d-bdc3e455b8ea
	echo	Loading Linux 2.6.30-2-686 ...
	linux	//vmlinuz-2.6.30-2-686 root=UUID=96c96a61-8615-4715-86d0-09cb8c62638c ro single 
	echo	Loading initial ramdisk ...
	initrd	//initrd.img-2.6.30-2-686
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
	insmod ext2
	set root=(hd0,1)
	search --no-floppy --fs-uuid --set bfdeb6d6-0b77-4beb-a63d-bdc3e455b8ea
	linux16	/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
	insmod ext2
	set root=(hd0,1)
	search --no-floppy --fs-uuid --set bfdeb6d6-0b77-4beb-a63d-bdc3e455b8ea
	linux16	/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Windows 95/98/Me (on /dev/hdb1)" {
	insmod fat
	set root=(hd1,1)
	search --no-floppy --fs-uuid --set 3571-16de
	drivemap -s (hd0) ${root}
	chainloader +1
}
menuentry "Debian GNU/Linux, linux 2.6.30-rc3-686 (on /dev/hdb5)" {
	insmod ext2
	set root=(hd1,5)
	search --no-floppy --fs-uuid --set 026a3f5c-0064-4ae7-869e-519d2cee05e7
	linux /boot/vmlinuz-2.6.30-rc3-686 root=/dev/hda5 ro
	initrd /boot/initrd.img-2.6.30-rc3-686
}
menuentry "Debian GNU/Linux, linux 2.6.30-rc3-686 (recovery mode) (on /dev/hdb5)" {
	insmod ext2
	set root=(hd1,5)
	search --no-floppy --fs-uuid --set 026a3f5c-0064-4ae7-869e-519d2cee05e7
	linux /boot/vmlinuz-2.6.30-rc3-686 root=/dev/hda5 ro single
	initrd /boot/initrd.img-2.6.30-rc3-686
}
menuentry "Debian GNU/Linux, linux 2.6.29-1-686 (on /dev/hdb5)" {
	insmod ext2
	set root=(hd1,5)
	search --no-floppy --fs-uuid --set 026a3f5c-0064-4ae7-869e-519d2cee05e7
	linux /boot/vmlinuz-2.6.29-1-686 root=/dev/hda5 ro
	initrd /boot/initrd.img-2.6.29-1-686
}
menuentry "Debian GNU/Linux, linux 2.6.29-1-686 (recovery mode) (on /dev/hdb5)" {
	insmod ext2
	set root=(hd1,5)
	search --no-floppy --fs-uuid --set 026a3f5c-0064-4ae7-869e-519d2cee05e7
	linux /boot/vmlinuz-2.6.29-1-686 root=/dev/hda5 ro single
	initrd /boot/initrd.img-2.6.29-1-686
}
menuentry "Debian GNU/Linux, linux 2.6.29 (on /dev/hdb5)" {
	insmod ext2
	set root=(hd1,5)
	search --no-floppy --fs-uuid --set 026a3f5c-0064-4ae7-869e-519d2cee05e7
	linux /boot/vmlinuz-2.6.29 root=/dev/hda5 ro
	initrd /boot/initrd.img-2.6.29
}
menuentry "Debian GNU/Linux, linux 2.6.29 (recovery mode) (on /dev/hdb5)" {
	insmod ext2
	set root=(hd1,5)
	search --no-floppy --fs-uuid --set 026a3f5c-0064-4ae7-869e-519d2cee05e7
	linux /boot/vmlinuz-2.6.29 root=/dev/hda5 ro single
	initrd /boot/initrd.img-2.6.29
}
menuentry "Debian GNU/Linux, linux 2.6.28-1-686 (on /dev/hdb5)" {
	insmod ext2
	set root=(hd1,5)
	search --no-floppy --fs-uuid --set 026a3f5c-0064-4ae7-869e-519d2cee05e7
	linux /boot/vmlinuz-2.6.28-1-686 root=/dev/hda5 ro
	initrd /boot/initrd.img-2.6.28-1-686
}
menuentry "Debian GNU/Linux, linux 2.6.28-1-686 (recovery mode) (on /dev/hdb5)" {
	insmod ext2
	set root=(hd1,5)
	search --no-floppy --fs-uuid --set 026a3f5c-0064-4ae7-869e-519d2cee05e7
	linux /boot/vmlinuz-2.6.28-1-686 root=/dev/hda5 ro single
	initrd /boot/initrd.img-2.6.28-1-686
}
menuentry "Debian GNU/Linux, linux 2.6.28 (on /dev/hdb5)" {
	insmod ext2
	set root=(hd1,5)
	search --no-floppy --fs-uuid --set 026a3f5c-0064-4ae7-869e-519d2cee05e7
	linux /boot/vmlinuz-2.6.28 root=/dev/hda5 ro
	initrd /boot/initrd.img-2.6.28
}
menuentry "Debian GNU/Linux, linux 2.6.28 (recovery mode) (on /dev/hdb5)" {
	insmod ext2
	set root=(hd1,5)
	search --no-floppy --fs-uuid --set 026a3f5c-0064-4ae7-869e-519d2cee05e7
	linux /boot/vmlinuz-2.6.28 root=/dev/hda5 ro single
	initrd /boot/initrd.img-2.6.28
}
menuentry "Memory test (memtest86+) (on /dev/hdb5)" {
	insmod ext2
	set root=(hd1,5)
	search --no-floppy --fs-uuid --set 026a3f5c-0064-4ae7-869e-519d2cee05e7
	linux /boot/memtest86+.bin 
}
menuentry "Memory test (memtest86+, serial console 115200) (on /dev/hdb5)" {
	insmod ext2
	set root=(hd1,5)
	search --no-floppy --fs-uuid --set 026a3f5c-0064-4ae7-869e-519d2cee05e7
	linux /boot/memtest86+.bin console=ttyS0,115200n8
}
menuentry "Windows 95/98/Me (on /dev/sdb1)" {
	insmod fat
	set root=(hd3,1)
	search --no-floppy --fs-uuid --set 0831-11dd
	drivemap -s (hd0) ${root}
	chainloader +1
}
### 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 ###
*********************** END /boot/grub/grub.cfg

-- System Information:
Debian Release: squeeze/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (500, 'stable')
Architecture: i386 (i686)

Kernel: Linux 2.6.32 (SMP w/1 CPU core; PREEMPT)
Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages grub-pc depends on:
ii  debconf [debconf-2.0]    1.5.28          Debian configuration management sy
ii  grub-common              1.98~20100110-1 GRand Unified Bootloader, version 
ii  libc6                    2.10.2-5        Embedded GNU C Library: Shared lib
ii  ucf                      3.0025          Update Configuration File: preserv

grub-pc recommends no packages.

Versions of packages grub-pc suggests:
ii  desktop-base                  5.0.5      common files for the Debian Deskto

-- debconf-show failed






More information about the Pkg-grub-devel mailing list