At this time, I have a functional system, but /etc/lvm/lvm.conf is not
included in my initramfs. I did not edit any file besides
/etc/lvm/lvm.conf to filter out devices. This is the diff between a
working (good) and a not working (bad) initramfs:

=====================================

$ LANG=en diff -r good bad
Binary files good/bin/dmesg and bad/bin/dmesg differ
Only in good/bin: ntfs-3g
diff -r good/conf/conf.d/resume bad/conf/conf.d/resume
1c1
< RESUME=UUID=2a90babe-f5f4-4954-8844-9f069a8b8abf
---
> RESUME=/dev/sdb3
diff -r good/conf/modules bad/conf/modules
1d0
< fuse
7,9d5
< dm_mod
< dm_snapshot
< dm_mirror
Binary files good/etc/console-setup/boottime.kmap.gz and 
bad/etc/console-setup/boottime.kmap.gz differ
diff -r good/etc/default/console-setup bad/etc/default/console-setup
8c8
< BOOTTIME_KMAP_MD5="4c25c2e93531789eeb1644f36883c96d"
---
> BOOTTIME_KMAP_MD5="24de09e93760848ccb47b26a64b2e66a"
Only in good/etc/modprobe.d: fuse
Only in good/etc/modprobe.d: lrm-video
Only in bad/etc/modprobe.d: lrm-video.dpkg-new
Only in good/etc/modprobe.d: nvidia-kernel-nkc
Only in bad/etc/modprobe.d: nvidia-kernel-nkc.dpkg-new
Only in good/etc/udev/rules.d: 65-dmsetup.rules
Only in good/etc/udev/rules.d: 85-lvm2.rules
Binary files good/lib/libc.so.6 and bad/lib/libc.so.6 differ
Only in good/lib: libdevmapper.so.1.02.1
Only in good/lib: libfuse.so.2
Only in good/lib: libncurses.so.5
Only in good/lib: libntfs-3g.so.23
Binary files good/lib/libproc-3.2.7.so and bad/lib/libproc-3.2.7.so differ
Only in good/lib: libpthread.so.0
Only in good/lib: libreadline.so.5
Only in good/lib: librt.so.1
Only in good/lib: libsepol.so.1
Only in good/lib/modules/2.6.24-23-generic/kernel/drivers: md
Only in good/lib/modules/2.6.24-23-generic/kernel/fs: fuse
Binary files good/sbin/depmod and bad/sbin/depmod differ
Only in good/sbin: dmsetup
Only in good/sbin: lvm
Binary files good/sbin/modprobe and bad/sbin/modprobe differ
Only in good/sbin: mount.fuse
Only in good/sbin: mount.ntfs
Only in good/sbin: mount.ntfs-3g
Binary files good/sbin/pkill and bad/sbin/pkill differ
Binary files good/sbin/rmmod and bad/sbin/rmmod differ
Only in good/scripts/init-premount: lvm2
diff -r good/scripts/init-top/console_setup bad/scripts/init-top/console_setup
27,30d26
< for i in 1 2 3 4 5 6; do
<       [ -c /dev/tty$i ] || mknod /dev/tty$i c 4 $i
< done
< 
Only in good/scripts/local-bottom: ntfs_3g
Only in good/scripts/local-premount: ntfs_3g

=====================================

regarding lvm:

Only in good/etc/udev/rules.d: 85-lvm2.rules
Only in good/sbin: lvm
Only in good/scripts/init-premount: lvm2

=====================================

There's something I don't understand about how initramfs is updated: it
seems that you're right and that the lvm2 hook is called even if  it's
not present in /etc/initramfs/hooks/.

I'll try to make a fresh install and a backup and try to reproduce the
behavior. In my point of view, everything worked out the moment I copied
/usr/share/initramfs-tools/hooks/lvm2 inito /etc/initramfs-tools/hooks/.

Now I can remove /etc/initramfs-tools/hooks/lvm2 and update initramfs:
it's still working.

Maybe update-initramfs includes the lvm2 hook (present in /etc
/initramfs-tools/hooks or not) when it detects a PV on the system. That
would be the most rational explanation.

In a nutshell:

 - If the LVM configuration is made and the initramfs updated right away while 
a PV is present: it will work after the reboot
 - If the LVM configuration is made, the system rebooted, the initramfs updated 
after the reboot: it won't work as far as the lvm2 hook won't be included 
because no PV is detected (system using a sngle static path).

-- 
udev breaks multipath after reboot when using LVM
https://bugs.launchpad.net/bugs/230006
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to