forked from pool/libguestfs
- Include mkinitrd scripts from lvm2, device-mapper, mdadm and
nfs-client for 13.2 builds. The scripts will be removed from these packages, they are required here. (bnc#883863, bnc#883873,bnc#883876) OBS-URL: https://build.opensuse.org/package/show/Virtualization/libguestfs?expand=0&rev=290
This commit is contained in:
41
libguestfs.mkinitrd.setup-dm.sh
Normal file
41
libguestfs.mkinitrd.setup-dm.sh
Normal file
@@ -0,0 +1,41 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
#%stage: devicemapper
|
||||
#%depends: dmroot
|
||||
#
|
||||
|
||||
# no dmsetup -> no dm
|
||||
if [ -x "$(type -p dmsetup)" ]; then
|
||||
dm_blockdev=
|
||||
|
||||
# if any device before was on dm we have to activate it
|
||||
[ "$tmp_root_dm" ] && root_dm=1
|
||||
|
||||
blockdev="$(dm_resolvedeps_recursive $blockdev)"
|
||||
[ "$?" = 0 ] && root_dm=1
|
||||
# include dm when using dm based block devs
|
||||
[ "$DM_BLOCK" ] && root_dm=1
|
||||
|
||||
# include modules
|
||||
if [ -n "$root_dm" ] ; then
|
||||
# Add all dm modules
|
||||
dm_modules=
|
||||
for table in $(dmsetup table | cut -f 4 -d ' ' | sort | uniq); do
|
||||
if [ "$table" = "thin" ]; then table="thin-pool"; fi
|
||||
if [ "$table" ] && [ "$table" != "linear" ] && [ "$table" != "striped" ] ; then
|
||||
dm_modules="$dm_modules dm-$table"
|
||||
fi
|
||||
done
|
||||
dm_modules="$dm_modules dm-mirror"
|
||||
fi
|
||||
|
||||
# include dm block var from sysconfig
|
||||
mkdir -p $tmp_mnt/etc/sysconfig
|
||||
grep DM_BLOCK /etc/sysconfig/kernel > $tmp_mnt/etc/sysconfig/kernel
|
||||
mkdir -p $tmp_mnt/usr/lib/udev/rules.d
|
||||
cp /usr/lib/udev/rules.d/10-dm.rules $tmp_mnt/usr/lib/udev/rules.d/
|
||||
cp /usr/lib/udev/rules.d/13-dm-disk.rules $tmp_mnt/usr/lib/udev/rules.d
|
||||
cp /usr/lib/udev/rules.d/95-dm-notify.rules $tmp_mnt/usr/lib/udev/rules.d
|
||||
save_var root_dm
|
||||
save_var dm_modules
|
||||
fi
|
||||
Reference in New Issue
Block a user