Bugzilla – Bug 293696
sd_mod missing for my system
Last modified: 2007-07-23 07:50:36 UTC
I installed from openSUSE-10.3-Alpha6-KDE-i386-Build20070721-CD1.iso and it did not boot. The sd_mod module is missing from my initrd. I had to copy quite some devices into the chroot, and it's reproducible: titania:/ # mkinitrd -v Kernel image: /boot/vmlinuz-2.6.22-5-default Initrd image: /boot/initrd-2.6.22-5-default Root device: /dev/disk/by-id/scsi-SATA_Hitachi_HTS5412_HP0400BEG64SUA-part6 (/dev/sda6) (mounted on / as ext3) Resume device: /dev/sda8 (/dev/sda6) [MODULES] 02-start.sh: processor thermal ata_piix fan jbd ext3 edd [MODULES] 11-usb.sh: usbcore [MODULES] 11-usb.sh: ohci_hcd [MODULES] 11-usb.sh: uhci-hcd [MODULES] 11-usb.sh: ehci_hcd [MODULES] 11-usb.sh: usbhid [MODULES] 84-mount.sh: ext3 Kernel Modules: processor thermal scsi_mod libata ata_piix fan jbd mbcache ext3 edd usbcore ohci-hcd uhci-hcd ehci-hcd ff-memless hid usbhid [MOUNT] Root: /dev/disk/by-id/scsi-SATA_Hitachi_HTS5412_HP0400BEG64SUA-part6 cp: Aufruf von stat für „/sbin/kpartx“ nicht möglich: Datei oder Verzeichnis nicht gefunden cp: Aufruf von stat für „/sbin/kpartx_id“ nicht möglich: Datei oder Verzeichnis nicht gefunden Features: usb kpartx resume.kernel Including: usb kpartx resume.kernel Bootsplash: SuSE (1400x1050) Shared libs: ldd: /sbin/kpartx: Datei oder Verzeichnis nicht gefunden ldd: /sbin/kpartx_id: Datei oder Verzeichnis nicht gefunden lib/ld-2.6.so lib/libacl.so.1.1.0 lib/libattr.so.1.1.0 lib/libblkid.so.1.0 lib/libcom_err.so.2.1 lib/libc-2.6.so lib/libdl-2.6.so lib/libext2fs.so.2.4 lib/libhistory.so.5.2 lib/libncurses.so.5.6 lib/libpthread-2.6.so lib/libreadline.so.5.2 lib/librt-2.6.so lib/libutil-2.6.so lib/libuuid.so.1.2 lib/libvolume_id.so.0.78.0 lib/libnss_files-2.6.so lib/libnss_files.so.2 lib/libgcc_s.so.1 11420 blocks
ok, found the problem. newbd= if [ -x /sbin/dmraid -a -x /sbin/dmsetup ] ; then for bd in $blockdev ; do update_blockdev $bd if [ $blockdriver = device-mapper ]; then dm_uuid=$(dmsetup info -c --noheadings -o uuid -j $blockmajor -m $blockminor) dm_creator=${dm_uuid%-*} if [ "$dm_creator" = "dmraid" ]; then tmp_root_dm=1 # dmraid needs dm root_dmraid=1 newbd="$newbd $(echo $bd | sed 's/[0-9]*$//')" else newbd="$newbd $bd" fi fi done fi blockdev="$newbd" Without dmraid installed this will reset the blockdev and then no module for the root dev is installed ;(
I guess the preferred solution now is to move the dm*.sh scripts to the multipath tools?
Rather to device-mapper, I would say. But yes, this will be the next step.
*** This bug has been marked as a duplicate of bug 293045 ***