]> glassweightruler.freedombox.rocks Git - Ventoy.git/blobdiff - IMG/cpio/ventoy/hook/alpine/udev_disk_hook.sh
1.1.07 release
[Ventoy.git] / IMG / cpio / ventoy / hook / alpine / udev_disk_hook.sh
index 91391cca10393bd85ffecbbf93d99d3262e6b7b1..df4953eccf7e6194b969880b41c033d1fed8bdb8 100644 (file)
 
 . /ventoy/hook/ventoy-hook-lib.sh
 
-if [ "$SUBSYSTEM" != "block" ] || [ "$DEVTYPE" != "partition" ]; then    
-    exit 0
-fi
+PATH=$BUSYBOX_PATH:$VTOY_PATH/tool:$PATH
 
-if [ -b /dev/${MDEV:0:-1} ]; then
-    vtlog "/dev/${MDEV:0:-1} exist"
-else
-    $SLEEP 2
-fi
+wait_for_usb_disk_ready
 
-if is_ventoy_hook_finished || not_ventoy_disk "${MDEV:0:-1}"; then
+vtdiskname=$(get_ventoy_disk_name)
+if [ "$vtdiskname" = "unknown" ]; then
+    vtlog "ventoy disk not found"
+    PATH=$VTPATH_OLD
     exit 0
 fi
 
-PATH=$BUSYBOX_PATH:$VTOY_PATH/tool:$PATH
-
 #
 # longpanda:
 # Alpine initramfs doesn't contain dm-mod or fuse module, 
@@ -47,13 +42,17 @@ PATH=$BUSYBOX_PATH:$VTOY_PATH/tool:$PATH
 #   3. unmount and delete the squashfs file
 #
 
+MDEV="${vtdiskname#/dev/}2"
+
 vtoydm -i -f $VTOY_PATH/ventoy_image_map -d /dev/${MDEV:0:-1} > $VTOY_PATH/iso_file_list
 
 vtLine=$(grep '[-][-] modloop-lts ' $VTOY_PATH/iso_file_list)
 sector=$(echo $vtLine | awk '{print $(NF-1)}')
 length=$(echo $vtLine | awk '{print $NF}')
 
+echo -n "Mounting boot media, please wait ......"
 vtoydm -e -f $VTOY_PATH/ventoy_image_map -d /dev/${MDEV:0:-1} -s $sector -l $length -o /vt_modloop
+echo "done"
 
 mkdir -p $VTOY_PATH/mnt
 mount /vt_modloop $VTOY_PATH/mnt