Bug#477304: closed by "Felix Zielcke" <fzielcke at z-51.de> (Grub fails to find /boot/boot/grub/device.map)
Nick Hastings
hastings at hep.phys.s.u-tokyo.ac.jp
Fri Jul 25 01:19:15 UTC 2008
Hi,
* Debian Bug Tracking System <owner at bugs.debian.org> [080724 16:11]:
> From: Felix Zielcke <fzielcke at z-51.de>
> To: 477304-done at bugs.debian.org
> Subject: Grub fails to find /boot/boot/grub/device.map
> Date: Thu, 24 Jul 2008 09:00:55 +0200
> X-Mailer: Microsoft Windows Live Mail 12.0.1606
> X-Spam-Status: No, score=-4.0 required=4.0 tests=BAYES_00 autolearn=no
> version=3.1.4-bugs.debian.org_2005_01_02
> Importance: Normal
>
> I just tried it out now myself in VMware
> grub-legacy boot fine with a seperate /boot partion with just /grub
> (for it) and not /boot/boot/grub (real)
Interesting but not related to this bug.
>> During the runing of the postinst script for a recent kernel upgrade, grub
>> failed to find `/boot/boot/grub/device.map'. Instead it complained:
>
>> grub-probe: error: Cannot open `/boot/grub/device.map'
>
>> On a system with a separate /boot partition (such as this one), I
>> would have thought that device.map should live in /boot/boot/grub
>> along with menu.lst and friends.
>
> Seems like Robert and I didn't read correctly.
> Did you move device.map from /boot/grub to /boot/boot/grub ?
No.
> Well then it's your own fault.
Well it would be *if* I had have done such a stupid thing. All I did was upgrade.
> device.map is only used on grub-install but grub itself doestn't access
> it on boot
Again, not related to the bug report.
> I close this bug. If anyone is able to tell us how to reproduce this
> /boot/boot problem, please feel free to reopen it.
I will explictly tell you below.
> But for me it looks > like grub-legacy is able to boot fine with just
> /grub/ (for it) and not > /boot/grub/
This is *not* what the bug is about. The bug is about what happens in
the case where grub *is* using /boot/boot/grub/. Please read the bug
report again.
If you really want to reporoduce the bug the same way I did, you need to
start by installing woody...
In virtualbox I did roughly the following
1. - Install woody with a seperate /boot partition
- get a woody iso from:
http://public.www.planetmirror.com/pub/debian-minicd/woody/woody-i386-1.iso
- boot with bf24 (otherwise you'll get a 2.2 kernel)
- install with hda1=/boot hda2=swap hda3=/
- Don't bother selecting any kernel modules
- set up sources.lists with
# echo "deb http://archive.debian.org/debian-archive/ woody main" >>/etc/apt/sources.list
- dpkg-reconfigure debconf (set to critical)
- Remove a bunch of uneeded packages to speed up the upgrades eg
# apt-get remove --purge gdb g++ gcc nfs-common procmail
- # apt-get update && apt-get upgrade
- # apt-get intall kernel-image-2.4.18-686
- # echo pcnet32 >> /etc/modules (was built into the previous kernel)
- # apt-get isntall grub
- # grub-install --root-directory=/boot /dev/hda
- edit /boot/boot/grub/menu.lst to make root=/dev/hda3
- # update-grub
- # apt-get remove --purge lilo
- # reboot
2. - Upgrade to sarge
- # echo "deb http://ftp.debian.org/debian sarge main" >> /etc/apt/sources.list
- # echo 'APT::Cache-Limit 24000000;' > /etc/apt/apt.conf
- # apt-get update && apt-get upgrade && apt-get dist-upgrade
- # apt-get clean
- # aptitude install exim4
- # echo "do_initrd = yes" >> /etc/kernel-img.conf
- # echo "postinst_hook = update-grub" >> /etc/kernel-img.conf
- # echo "postrm_hook = update-grub" >> /etc/kernel-img.conf
- # aptitude install kernel-image-2.6.8-4-686
- For some reason update-grub was not called even though the
postisnt_hook was set ...
# update-grub
- # reboot
3. - Upgrade to etch
- # echo "deb http://archive.debian.org/debian etch main">>sources.lists
- # aptitude update && aptitude upgrade && aptitude dist-upgrade
- # aptitude install linux-image-2.6.18-6-686
- # halt
4. - Upgrade to lenny (will still use /boot/boot/grub)
- # echo "deb http://archive.debian.org/debian lenny main">>sources.lists
- keep etch version of grub
- # aptitude update && aptitude upgrade && aptitude dist-upgrade
- This installs grub 0.97-41 and the bug does not arise
- However if you install grub 0.97-36 (which for some reason depends on
grub-common) against which this bug was filed and run update-grub
you can reproduce the bug.
woody:/home/guest# dpkg -i grub-common_1.96+20080704-2_i386.deb grub_0.97-36_i386.deb
(Reading database ... 25198 files and directories currently installed.)
Preparing to replace grub-common 1.96+20080704-2 (using grub-common_1.96+20080704-2_i386.deb) ...
Unpacking replacement grub-common ...
Preparing to replace grub 0.97-36 (using grub_0.97-36_i386.deb) ...
Unpacking replacement grub ...
Setting up grub-common (1.96+20080704-2) ...
Setting up grub (0.97-36) ...
woody:/home/guest# update-grub
Searching for GRUB installation directory ... found: /boot/boot/grub
grub-probe: error: Cannot open `/boot/grub/device.map'
If anyone is interested I can provide a snapshot of the image that I
took just before upgrading to lenny.
Anyway it seems that the bug is indeed reproducable and better news it
is fixed in grub 0.97-41.
Nick.
> From: Nick Hastings <hastings at hep.phys.s.u-tokyo.ac.jp>
> To: Debian Bug Tracking System <submit at bugs.debian.org>
> Subject: Grub fails to find /boot/boot/grub/device.map
> Date: Tue, 22 Apr 2008 19:05:19 +0900
> X-Mailer: reportbug 3.39-0.1
> X-Spam-Status: No, score=-9.9 required=4.0 tests=BAYES_00,FOURLA,HAS_PACKAGE
> autolearn=no version=3.1.4-bugs.debian.org_2005_01_02
>
> Package: grub
> Version: 0.97-36
> Severity: important
>
>
> During the runing of the postinst script for a recent kernel upgrade, grub
> failed to find `/boot/boot/grub/device.map'. Instead it complained:
>
> grub-probe: error: Cannot open `/boot/grub/device.map'
>
> On a system with a separate /boot partition (such as this one), I
> would have thought that device.map should live in /boot/boot/grub
> along with menu.lst and friends. Downgrading to grub 0.97-35 did not
> help, but downgradingto grub 0.97-27 in stable did.
>
> Here is the output from the failed kernel postinst with grub 0.97-36
> (note that grub install dir is correctly found at /boot/boot/grub, but
> that grub-probe looks for /boot/grub/device.map):
>
> % sudo aptitude install
> Reading package lists... Done
> Building dependency tree
> Reading state information... Done
> Reading extended state information
> Initializing package states... Done
> The following partially installed packages will be configured:
> linux-image-2.6.24-1-686-bigmem
> 0 packages upgraded, 0 newly installed, 0 to remove and 31 not upgraded.
> Need to get 0B of archives. After unpacking 0B will be used.
> Setting up linux-image-2.6.24-1-686-bigmem (2.6.24-6) ...
> Running depmod.
> Finding valid ramdisk creators.
> Using mkinitramfs-kpkg to build the ramdisk.
> Other valid candidates: mkinitramfs-kpkg mkinitrd.yaird
> Not updating initrd symbolic links since we are being updated/reinstalled
> (2.6.24-5 was configured last, according to dpkg)
> Not updating image symbolic links since we are being updated/reinstalled
> (2.6.24-5 was configured last, according to dpkg)
> Running postinst hook script update-grub.
> Searching for GRUB installation directory ... found: /boot/boot/grub
> grub-probe: error: Cannot open `/boot/grub/device.map'
> User postinst hook script [update-grub] exited with value 1
> dpkg: error processing linux-image-2.6.24-1-686-bigmem (--configure):
> subprocess post-installation script returned error exit status 1
> Errors were encountered while processing:
> linux-image-2.6.24-1-686-bigmem
> E: Sub-process /usr/bin/dpkg returned an error code (1)
> A package failed to install. Trying to recover:
> Setting up linux-image-2.6.24-1-686-bigmem (2.6.24-6) ...
> Running depmod.
> Finding valid ramdisk creators.
> Using mkinitramfs-kpkg to build the ramdisk.
> Other valid candidates: mkinitramfs-kpkg mkinitrd.yaird
> Not updating initrd symbolic links since we are being updated/reinstalled
> (2.6.24-5 was configured last, according to dpkg)
> Not updating image symbolic links since we are being updated/reinstalled
> (2.6.24-5 was configured last, according to dpkg)
> Running postinst hook script update-grub.
> Searching for GRUB installation directory ... found: /boot/boot/grub
> grub-probe: error: Cannot open `/boot/grub/device.map'
> User postinst hook script [update-grub] exited with value 1
> dpkg: error processing linux-image-2.6.24-1-686-bigmem (--configure):
> subprocess post-installation script returned error exit status 1
> Errors were encountered while processing:
> linux-image-2.6.24-1-686-bigmem
> Reading package lists... Done
> Building dependency tree
> Reading state information... Done
> Reading extended state information
> Initializing package states... Done
>
>
>
>
> -- System Information:
> Debian Release: lenny/sid
> APT prefers unstable
> APT policy: (990, 'unstable'), (500, 'testing'), (500, 'stable'), (1, 'experimental')
> Architecture: i386 (i686)
>
> Kernel: Linux 2.6.24-1-686-bigmem (SMP w/4 CPU cores)
> 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 depends on:
> ii libc6 2.7-10 GNU C Library: Shared libraries
> ii libncurses5 5.6+20080419-1 Shared libraries for terminal hand
>
> grub recommends no packages.
>
> -- no debconf information
>
>
--
Nicholas C. Hastings, Research Staff
Aihara Group/Department of Physics, The University of Tokyo
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: Digital signature
Url : http://lists.alioth.debian.org/pipermail/pkg-grub-devel/attachments/20080725/0c14d587/attachment.pgp
More information about the Pkg-grub-devel
mailing list