else
for vtParam in $($CAT /proc/cmdline); do
if echo $vtParam | $GREP -q 'inst.ks=hd:LABEL='; then
+ vtRawKsFull="$vtParam"
vtRawKs=$(echo $vtParam | $AWK -F: '{print $NF}')
- VTKS="inst.ks=hd:/dev/dm-0:$vtRawKs"
+ VTKS="inst.ks=hd:/dev/ventoy:$vtRawKs"
break
fi
if echo $vtParam | $GREP -q '^ks=.*:/'; then
+ vtRawKsFull="$vtParam"
vtRawKs=$(echo $vtParam | $AWK -F: '{print $NF}')
- VTKS="ks=hd:/dev/dm-0:$vtRawKs"
+ VTKS="ks=hd:/dev/ventoy:$vtRawKs"
+ break
+ fi
+
+ if echo $vtParam | $GREP -q '^inst.ks=.*:/'; then
+ vtRawKsFull="$vtParam"
+ vtRawKs=$(echo $vtParam | $AWK -F: '{print $NF}')
+ VTKS="inst.ks=hd:/dev/ventoy:$vtRawKs"
break
fi
done
$BUSYBOX_PATH/rm -rf $VTOY_PATH/selinuxfs
fi
-
echo "VTKS=$VTKS VTOVERLAY=$VTOVERLAY" >> $VTLOG
+if [ -n "$vtRawKs" ]; then
+ if echo $vtRawKsFull | $EGREP -q "=http|=https|=ftp|=nfs|=hmc"; then
+ echo "vtRawKsFull=$vtRawKsFull no patch needed." >> $VTLOG
+ vtRawKs=""
+ VTKS=""
+ else
+ echo "$vtRawKs" > $VTOY_PATH/ventoy_ks_rootpath
+ fi
+fi
+
if ls $VTOY_PATH | $GREP -q 'ventoy_dud[0-9]'; then
for vtDud in $(ls $VTOY_PATH/ventoy_dud*); do
vtInstDD="$vtInstDD inst.dd=file:$vtDud"
fi
echo "vtInstDD=$vtInstDD" >> $VTLOG
-$SED "s#printf\(.*\)\$CMDLINE#printf\1\$CMDLINE inst.stage2=hd:/dev/dm-0 $VTKS $vtInstDD#" -i /lib/dracut-lib.sh
+$SED "s#printf\(.*\)\$CMDLINE#printf\1\$CMDLINE inst.stage2=hd:/dev/ventoy $VTKS $VTOVERLAY $vtInstDD#" -i /lib/dracut-lib.sh
ventoy_set_inotify_script openEuler/ventoy-inotifyd-hook.sh
$SED 's/^mount $dev $repodir/mount -oro $dev $repodir/' -i /usr/sbin/anaconda-diskroot
fi
+
+if [ -f $VTOY_PATH/autoinstall ]; then
+ cp -a $VTOY_PATH/hook/openEuler/ventoy-autoexp.sh /lib/dracut/hooks/pre-mount/99-ventoy-autoexp.sh
+fi