[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#291386: kernel-image-2.4.27-2-686: creates bad initrd with complex lvm2 setup



Hi...

  I'm comming with news that might explain things...

  First I've diffed the initrds on the two machines I talked about in my initial report...

  The one that breaks is "1" and the one that works is "2"...
  I attach the diff file...

  Another interesting detail is dpkg -l lvm\*...
  On 1 it gives me:

  un  lvm            <none>      (no description available)
  un  lvm-binaries   <none>      (no description available)
  ii  lvm-common     1.5.17      The Logical Volume Manager for Linux (common files)
  ii  lvm10          1.0.8-8     The Logical Volume Manager for Linux
  ii  lvm2           2.00.24-1   The Linux Logical Volume Manager
  un  lvm5           <none>      (no description available)
  un  lvm6           <none>      (no description available)

  On 2 it gives me (I guess the french locales won't be a problem):

  un  lvm            <néant>     (aucune description n'est disponible)
  un  lvm-binaries   <néant>     (aucune description n'est disponible)
  ii  lvm-common     1.5.17      The Logical Volume Manager for Linux (common files)
  un  lvm10          <néant>     (aucune description n'est disponible)
  ii  lvm2           2.00.24-1   The Linux Logical Volume Manager
  un  lvm5           <néant>     (aucune description n'est disponible)
  un  lvm6           <néant>     (aucune description n'est disponible)

  Now I've a guess on my mistake...

  <after a little test>

  Good guess...

  After removing lvm10, reinstalling kernel-image does give a good initrd...

  I attach the diff between "2" and the new one "3" for info...
  I guess the diffs are easily explained by the differences between the two boxes...

  Now the problem seems clear to me... Remains to choose how to solve it...
  
-- 
  Eric Deplagne
Binary files /mnt/initrd1/bin/awk and /mnt/initrd2/bin/awk differ
Only in /mnt/initrd2/bin: mkdir
Only in /mnt/initrd2/bin2: mkdir
File /mnt/initrd1/dev/console is a character special file while file /mnt/initrd2/dev/console is a character special file
Only in /mnt/initrd1/dev: lvm
File /mnt/initrd1/dev/null is a character special file while file /mnt/initrd2/dev/null is a character special file
Only in /mnt/initrd2/etc: lvm
diff -ru /mnt/initrd1/etc/modules.conf /mnt/initrd2/etc/modules.conf
--- /mnt/initrd1/etc/modules.conf	1970-01-01 01:00:00.000000000 +0100
+++ /mnt/initrd2/etc/modules.conf	1970-01-01 01:00:00.000000000 +0100
@@ -95,6 +95,24 @@
 
 ### update-modules: end processing /etc/modutils/paths
 
+### update-modules: start processing /etc/modutils/setserial
+#
+# This is what I wanted to do, but logger is in /usr/bin, which isn't loaded
+# when the module is first loaded into the kernel at boot time!
+#
+#post-install serial /etc/init.d/setserial start | logger -p daemon.info -t "setserial-module reload"
+#pre-remove serial /etc/init.d/setserial stop | logger -p daemon.info -t "setserial-module uload"
+#
+alias /dev/tts          serial
+alias /dev/tts/0        serial
+alias /dev/tts/1        serial
+alias /dev/tts/2        serial
+alias /dev/tts/3        serial
+post-install serial /etc/init.d/setserial modload > /dev/null 2> /dev/null
+pre-remove serial /etc/init.d/setserial modsave  > /dev/null 2> /dev/null
+
+### update-modules: end processing /etc/modutils/setserial
+
 ### update-modules: start processing /etc/modutils/arch/i386
 alias parport_lowlevel parport_pc
 alias char-major-10-144 nvram
Only in /mnt/initrd2/lib: libdevmapper.so.1.00
Only in /mnt/initrd2/lib: libdl.so.2
Only in /mnt/initrd1/lib: liblvm-10.so.1
Only in /mnt/initrd2/lib: libm.so.6
Only in /mnt/initrd1/lib: lvm-10
Only in /mnt/initrd2/lib: lvm-200
diff -ru /mnt/initrd1/loadmodules /mnt/initrd2/loadmodules
--- /mnt/initrd1/loadmodules	1970-01-01 01:00:00.000000000 +0100
+++ /mnt/initrd2/loadmodules	1970-01-01 01:00:00.000000000 +0100
@@ -29,4 +29,4 @@
 modprobe -k  via82cxxx > /dev/null 2>&1
 modprobe -k  ide-detect
 modprobe -k  ide-disk
-modprobe -k  lvm-mod
+modprobe -k  dm-mod
Only in /mnt/initrd1/sbin: vgscan
diff -ru /mnt/initrd1/script /mnt/initrd2/script
--- /mnt/initrd1/script	1970-01-01 01:00:00.000000000 +0100
+++ /mnt/initrd2/script	1970-01-01 01:00:00.000000000 +0100
@@ -1,7 +1,16 @@
 unload_unused_ide 'yes' pdc202xx_new adma100 aec62xx alim15x3 amd74xx atiixp cmd640 cmd64x cs5530 cy82c693 generic hpt34x hpt366 ns87415 opti621 pdc202xx_old piix rz1000 sc1200 serverworks siimage sis5513 slc90e66 triflex trm290 via82cxxx
 ROOT=/dev/mapper/vg-root
-[ -c /dev/lvm ] || mknod /dev/lvm c 109 0
-mount_tmpfs /etc
-vgscan
+mkdir /devfs/vg
+mount_tmpfs /var
+if [ -f /etc/lvm/lvm.conf ]; then
+cat /etc/lvm/lvm.conf > /var/lvm.conf
+fi
+mount_tmpfs /etc/lvm
+if [ -f /var/lvm.conf ]; then
+cat /var/lvm.conf > /etc/lvm/lvm.conf
+fi
+mount -nt devfs devfs /dev
 vgchange -a y vg
-umount -n /etc
+umount /dev
+umount -n /var
+umount -n /etc/lvm
Binary files /mnt/initrd2/bin/awk and /mnt/initrd3/bin/awk differ
File /mnt/initrd2/dev/console is a character special file while file /mnt/initrd3/dev/console is a character special file
File /mnt/initrd2/dev/null is a character special file while file /mnt/initrd3/dev/null is a character special file
diff -ru /mnt/initrd2/etc/modules.conf /mnt/initrd3/etc/modules.conf
--- /mnt/initrd2/etc/modules.conf	1970-01-01 01:00:00.000000000 +0100
+++ /mnt/initrd3/etc/modules.conf	1970-01-01 01:00:00.000000000 +0100
@@ -95,24 +95,6 @@
 
 ### update-modules: end processing /etc/modutils/paths
 
-### update-modules: start processing /etc/modutils/setserial
-#
-# This is what I wanted to do, but logger is in /usr/bin, which isn't loaded
-# when the module is first loaded into the kernel at boot time!
-#
-#post-install serial /etc/init.d/setserial start | logger -p daemon.info -t "setserial-module reload"
-#pre-remove serial /etc/init.d/setserial stop | logger -p daemon.info -t "setserial-module uload"
-#
-alias /dev/tts          serial
-alias /dev/tts/0        serial
-alias /dev/tts/1        serial
-alias /dev/tts/2        serial
-alias /dev/tts/3        serial
-post-install serial /etc/init.d/setserial modload > /dev/null 2> /dev/null
-pre-remove serial /etc/init.d/setserial modsave  > /dev/null 2> /dev/null
-
-### update-modules: end processing /etc/modutils/setserial
-
 ### update-modules: start processing /etc/modutils/arch/i386
 alias parport_lowlevel parport_pc
 alias char-major-10-144 nvram
Only in /mnt/initrd2/lib: libm.so.6

Attachment: signature.asc
Description: Digital signature


Reply to: