[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: bug report
From: |
Faheem Mitha |
Subject: |
Re: bug report |
Date: |
Tue, 4 Jan 2011 12:29:40 -0500 (EST) |
User-agent: |
Alpine 2.00 (LRH 1167 2008-08-23) |
Hi Vladimir,
Thanks for the helpful reply.
On Tue, 4 Jan 2011, Vladimir 'φ-coder/phcoder' Serbinenko wrote:
grml:/# /usr/sbin/grub-probe --device-map=/boot/grub/device.map
--target=fs -v /boot/grub
/usr/sbin/grub-probe: info: Cannot stat
`/dev/disk/by-id/scsi-1AMCC_3QF0QNYWC318ED001709', skipping.
/usr/sbin/grub-probe: info: Cannot stat
`/dev/disk/by-id/scsi-1AMCC_3QF0SGE4C318ED000F4B', skipping.
What does
ls -l /dev/disk/by-id/scsi-1AMCC_3QF0SGE4C318ED000F4B
say?
ls: cannot access /dev/disk/by-id/scsi-1AMCC_3QF0SGE4C318ED000F4B: No such
file or directory
You may need to remove /boot/grub/device.map and rerun grub-install with
--recheck parameter
I should mention that the root and boot partition previously belonged to a
different, non-raided system. I've been trying to import them to LVM on
top of software raid system. So there may be incorrect system info in some
files.
The device.map was
(hd0) /dev/disk/by-id/ata-ST3320620AS_3QF0SGE4
(hd1) /dev/disk/by-id/ata-ST3320620AS_3QF0QNYW
Removing it, I reran
grml:/boot/grub# grub-install --recheck /dev/md0
/usr/sbin/grub-setup: error: unable to identify a filesystem in hd0;
safety check can't be performed.
grml:/boot/grub# grub-install --recheck /dev/sda
Installation finished. No error reported.
I got basically the same device map back again, though.
(fd0) /dev/fd0
(hd0) /dev/disk/by-id/ata-ST3320620AS_3QF0SGE4
(hd1) /dev/disk/by-id/ata-ST3320620AS_3QF0QNYW
I quote my current grub.cfg below. This gives an error after booting,
saying it cannot find the newdebian volume group.
Based on what information I have been able to find online, the problem may
be with some or all of the entries
a) set root='(newdebian-root)'
Comment: I have seen in various places the suggestion that for a software
raid device
set root='(md0)'
is correct. I don't know why
set root='(newdebian-root)'
and
set root='(newdebian-boot)'
both appear in the file, though.
**************************************************************************
b) There are two search lines, with different uuids, namely
search --no-floppy --fs-uuid --set=root 1fd30dc4-f66d-4f2b-aea7-c50334f98856
search --no-floppy --fs-uuid --set=root c8231ae9-c018-45ba-8812-9170eb82449a
Comment: Presumably they cannot both be correct. In any case, I'm not
sure, and the online documentation is not very explicit, about what this
uuid is supposed to be. I assume it is that of the root device, which in
this case is /dev/md0? Output from mdadm doesn't show either of these
uuid.
grml:/boot/grub# mdadm --detail /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Sat Jan 1 00:55:29 2011
Raid Level : raid1
Array Size : 117185464 (111.76 GiB 120.00 GB)
Used Dev Size : unknown
Raid Devices : 2
Total Devices : 1
Persistence : Superblock is persistent
Update Time : Tue Jan 4 22:25:11 2011
State : clean, degraded
Active Devices : 1
Working Devices : 1
Failed Devices : 0
Spare Devices : 0
Name : chrestomanci:0
UUID : 2c141d70:e5bcd04f:199984f2:8be82e4a
Events : 1278
Number Major Minor RaidDevice State
0 8 2 0 active sync /dev/sda2
1 0 0 1 removed
On the other hand, I get
grml:/boot/grub# blkid /dev/md0
/dev/md0: UUID="LZEkwJ-sSK4-xiEe-5GSb-13DX-XXnL-KkTr21" TYPE="LVM2_member"
Also, it seems from the documentation that the
search --no-floppy --fs-uuid --set=root
line is to set the root device, but it has already been set with root=, so
why do it again?
**************************************************************************
3) linux /vmlinuz-2.6.32-5-vserver-686-bigmem
root=/dev/mapper/newdebian-root ro quiet
Should the root here really be root=/dev/mapper/newdebian-root? Note that
the kernel is in root=/dev/mapper/newdebian-boot, which is the boot
partition,
As already observed, grub cannot find the newdebian VG. Also, I've seen
the suggestion that root here should also be /dev/dm0.
***************************************************************************
Stray observation - it turns out that mdadm was not installed in my
chroot, and when installed, it promptly updated my initrd. Does grub not
require mdadm to be installed?
Apologies for this long message. Maybe some of it is more suitable for the
grub user mailing list.
Regards, Faheem
#
# 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
}
function load_video {
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
}
insmod raid
insmod mdraid1x
insmod lvm
insmod part_msdos
insmod ext2
set root='(newdebian-root)'
search --no-floppy --fs-uuid --set=root 1fd30dc4-f66d-4f2b-aea7-c50334f98856
if loadfont /usr/share/grub/unicode.pf2 ; then
set gfxmode=640x480
load_video
insmod gfxterm
fi
terminal_output gfxterm
insmod raid
insmod mdraid1x
insmod lvm
insmod part_msdos
insmod ext2
set root='(newdebian-boot)'
search --no-floppy --fs-uuid --set=root c8231ae9-c018-45ba-8812-9170eb82449a
set locale_dir=($root)/grub/locale
set lang=en_US
insmod gettext
set timeout=5
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/05_debian_theme ###
insmod raid
insmod mdraid1x
insmod lvm
insmod part_msdos
insmod ext2
set root='(newdebian-root)'
search --no-floppy --fs-uuid --set=root 1fd30dc4-f66d-4f2b-aea7-c50334f98856
insmod png
if background_image /usr/share/images/desktop-base/spacefun-grub.png; then
set color_normal=light-gray/black
set color_highlight=white/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-5-vserver-686-bigmem' --class
debian --class gnu-linux --class gnu --class os {
insmod raid
insmod mdraid1x
insmod lvm
insmod part_msdos
insmod ext2
set root='(newdebian-boot)'
search --no-floppy --fs-uuid --set=root
c8231ae9-c018-45ba-8812-9170eb82449a
echo 'Loading Linux 2.6.32-5-vserver-686-bigmem ...'
linux /vmlinuz-2.6.32-5-vserver-686-bigmem
root=/dev/mapper/newdebian-root ro quiet
echo 'Loading initial ramdisk ...'
initrd /initrd.img-2.6.32-5-vserver-686-bigmem
}
menuentry 'Debian GNU/Linux, with Linux 2.6.32-5-vserver-686-bigmem (recovery
mode)' --class debian --class gnu-linux --class gnu --class os {
insmod raid
insmod mdraid1x
insmod lvm
insmod part_msdos
insmod ext2
set root='(newdebian-boot)'
search --no-floppy --fs-uuid --set=root
c8231ae9-c018-45ba-8812-9170eb82449a
echo 'Loading Linux 2.6.32-5-vserver-686-bigmem ...'
linux /vmlinuz-2.6.32-5-vserver-686-bigmem
root=/dev/mapper/newdebian-root ro single
echo 'Loading initial ramdisk ...'
initrd /initrd.img-2.6.32-5-vserver-686-bigmem
}
menuentry 'Debian GNU/Linux, with Linux 2.6.26-2-vserver-686-bigmem' --class
debian --class gnu-linux --class gnu --class os {
insmod raid
insmod mdraid1x
insmod lvm
insmod part_msdos
insmod ext2
set root='(newdebian-boot)'
search --no-floppy --fs-uuid --set=root
c8231ae9-c018-45ba-8812-9170eb82449a
echo 'Loading Linux 2.6.26-2-vserver-686-bigmem ...'
linux /vmlinuz-2.6.26-2-vserver-686-bigmem
root=/dev/mapper/newdebian-root ro quiet
echo 'Loading initial ramdisk ...'
initrd /initrd.img-2.6.26-2-vserver-686-bigmem
}
menuentry 'Debian GNU/Linux, with Linux 2.6.26-2-vserver-686-bigmem (recovery
mode)' --class debian --class gnu-linux --class gnu --class os {
insmod raid
insmod mdraid1x
insmod lvm
insmod part_msdos
insmod ext2
set root='(newdebian-boot)'
search --no-floppy --fs-uuid --set=root
c8231ae9-c018-45ba-8812-9170eb82449a
echo 'Loading Linux 2.6.26-2-vserver-686-bigmem ...'
linux /vmlinuz-2.6.26-2-vserver-686-bigmem
root=/dev/mapper/newdebian-root ro single
echo 'Loading initial ramdisk ...'
initrd /initrd.img-2.6.26-2-vserver-686-bigmem
}
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###
### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
insmod raid
insmod mdraid1x
insmod lvm
insmod part_msdos
insmod ext2
set root='(newdebian-boot)'
search --no-floppy --fs-uuid --set=root
c8231ae9-c018-45ba-8812-9170eb82449a
linux16 /memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
insmod raid
insmod mdraid1x
insmod lvm
insmod part_msdos
insmod ext2
set root='(newdebian-boot)'
search --no-floppy --fs-uuid --set=root
c8231ae9-c018-45ba-8812-9170eb82449a
linux16 /memtest86+.bin console=ttyS0,115200n8
}
menuentry "Memory test (memtest86+, experimental multiboot)" {
insmod raid
insmod mdraid1x
insmod lvm
insmod part_msdos
insmod ext2
set root='(newdebian-boot)'
search --no-floppy --fs-uuid --set=root
c8231ae9-c018-45ba-8812-9170eb82449a
multiboot /memtest86+_multiboot.bin
}
menuentry "Memory test (memtest86+, serial console 115200, experimental
multiboot)" {
insmod raid
insmod mdraid1x
insmod lvm
insmod part_msdos
insmod ext2
set root='(newdebian-boot)'
search --no-floppy --fs-uuid --set=root
c8231ae9-c018-45ba-8812-9170eb82449a
multiboot /memtest86+_multiboot.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###
### BEGIN /etc/grub.d/30_os-prober ###
### 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 ###
### BEGIN /etc/grub.d/41_custom ###
if [ -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###