Bug#558312: grub-pc: This happened to me

Mahesh T. Pai paivakil at gmail.com
Mon Jun 21 13:03:41 UTC 2010


Package: grub-pc
Version: 1.98+20100614-2
Severity: normal


I had done an "apt-get -t experimental upgrade" on Saturday 
night (19th), and was hit by the "gettext ...." error  and 
was dropped into the unhelpful grub_rescue prompt. 

This is amd64 architecture, with only one sata disk attached 
as /dev/sda. The system was updated to grub2 from grub version 0.9* 
days, so I still used to have the old style device references in grub.cfg.

I had to attach a bootable harddisk from a i386 architecture, delete 
everything from /boot/grub/  and boot into the amd64 system from the grub
menu loaded by the i386 system. 

Did a purge (why did this work in spite of /boot/grub being empty?)
and fresh install of  grub-pc; and now the system is working.

I am really frightened to remove the other hard disk now, 
and I have not bothered to find out whether I am getting the grub 
menu from the other hard disk or the SATA disk. 

For the users (and google)  out there, remember that changing 
the boot order from BIOS menu changes the disk numbering.

Here is how:-

When the BIOS is told to boot from the SATA disk first, grub will
detect it as hd(0,X), and the IDE disk becomes hd(1,X).

But when BIOS is told to boot from the IDE disk first, the IDE disk
becomes hd(0,X) and the sata disk is now hd(1,X).

Not sure if this report adds any value, I just want to meention that
I was hit by the problem. 

-- Package-specific info:

*********************** BEGIN /proc/mounts
/dev/sda4 / ext3 rw,relatime,errors=remount-ro,data=ordered 0 0
/dev/sda3 /boot ext3 rw,relatime,errors=continue,data=ordered 0 0
/dev/sda8 /home ext3 rw,relatime,errors=continue,data=ordered 0 0
/dev/sda5 /usr ext3 rw,relatime,errors=continue,data=ordered 0 0
/dev/sda6 /var ext3 rw,relatime,errors=continue,data=ordered 0 0
*********************** END /proc/mounts

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

*********************** BEGIN /boot/grub/grub.cfg
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
  load_env
fi
set default="0"
if [ "${prev_saved_entry}" ]; then
  set saved_entry="${prev_saved_entry}"
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
fi

function savedefault {
  if [ -z "${boot_once}" ]; then
    saved_entry="${chosen}"
    save_env saved_entry
  fi
}
if terminal_input console ; then true ; else
  # For backward compatibility with versions of terminal.mod that don't
  # understand terminal_input
  terminal console
fi
if terminal_output console ; then true ; else
  # For backward compatibility with versions of terminal.mod that don't
  # understand terminal_output
  terminal console
fi
set timeout=5
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Debian GNU/Linux, with Linux 2.6.32-2-amd64' --class debian --class gnu-linux --class gnu --class os {
	insmod part_msdos
	insmod ext2
	set root='(hd1,msdos3)'
	search --no-floppy --fs-uuid --set 01c26c16-59ac-4612-8811-8ccd87983bae
	echo	'Loading Linux 2.6.32-2-amd64 ...'
	linux	/vmlinuz-2.6.32-2-amd64 root=/dev/sda4 ro  quiet
	echo	'Loading initial ramdisk ...'
	initrd	/initrd.img-2.6.32-2-amd64
}
menuentry 'Debian GNU/Linux, with Linux 2.6.32-2-amd64 (recovery mode)' --class debian --class gnu-linux --class gnu --class os {
	insmod part_msdos
	insmod ext2
	set root='(hd1,msdos3)'
	search --no-floppy --fs-uuid --set 01c26c16-59ac-4612-8811-8ccd87983bae
	echo	'Loading Linux 2.6.32-2-amd64 ...'
	linux	/vmlinuz-2.6.32-2-amd64 root=/dev/sda4 ro single 
	echo	'Loading initial ramdisk ...'
	initrd	/initrd.img-2.6.32-2-amd64
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Windows NT/2000/XP (loader) (on /dev/hda1)" {
	insmod part_msdos
	insmod ntfs
	set root='(hd0,msdos1)'
	search --no-floppy --fs-uuid --set 06f4e3f0f4e3dfc3
	drivemap -s (hd0) ${root}
	chainloader +1
}
menuentry "Debian GNU/Linux, with Linux 2.6.32-rc8-686 (on /dev/hda6)" {
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos6)'
	search --no-floppy --fs-uuid --set 58ab244d-b4c0-4600-8105-baf0f92334e8
	linux /boot/vmlinuz-2.6.32-rc8-686 root=/dev/hda6 ro quiet
	initrd /boot/initrd.img-2.6.32-rc8-686
}
menuentry "Debian GNU/Linux, with Linux 2.6.30-2-686 (on /dev/hda6)" {
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos6)'
	search --no-floppy --fs-uuid --set 58ab244d-b4c0-4600-8105-baf0f92334e8
	linux /boot/vmlinuz-2.6.30-2-686 root=/dev/hda6 ro quiet
	initrd /boot/initrd.img-2.6.30-2-686
}
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/40_custom ###

### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###
*********************** END /boot/grub/grub.cfg

-- System Information:
Debian Release: squeeze/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.32-2-amd64 (SMP w/1 CPU core)
Locale: LANG=en_IN, LC_CTYPE=en_IN (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages grub-pc depends on:
ii  debconf [debconf-2.0]    1.5.32          Debian configuration management sy
ii  grub-common              1.98+20100614-2 GRand Unified Bootloader, version 
ii  libc6                    2.11.2-1        Embedded GNU C Library: Shared lib
ii  libdevmapper1.02.1       2:1.02.48-2     The Linux Kernel Device Mapper use
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 information:
  grub2/kfreebsd_cmdline:
* grub2/linux_cmdline:
  grub-pc/chainload_from_menu.lst: true
  grub-pc/kopt_extracted: false
* grub-pc/install_devices: /dev/sda
  grub-pc/postrm_purge_boot_grub: false
  grub2/kfreebsd_cmdline_default: quiet
  grub2/linux_cmdline_default: quiet





More information about the Pkg-grub-devel mailing list