diff --git a/IMG/cpio/ventoy/hook/kaos/ventoy-disk.sh b/IMG/cpio/ventoy/hook/kaos/ventoy-disk.sh index c21c04c9..42569cc0 100644 --- a/IMG/cpio/ventoy/hook/kaos/ventoy-disk.sh +++ b/IMG/cpio/ventoy/hook/kaos/ventoy-disk.sh @@ -49,9 +49,10 @@ ventoy_os_install_dmsetup_by_fuse() { insmod $KoName fi - umount $VTOY_PATH/mnt/squashfs - umount $VTOY_PATH/mnt/iso - umount $VTOY_PATH/mnt/fuse + ventoy_check_umount $VTOY_PATH/mnt/squashfs + ventoy_check_umount $VTOY_PATH/mnt/iso + ventoy_check_umount $VTOY_PATH/mnt/fuse + vtlog "umount done" } diff --git a/IMG/cpio/ventoy/hook/ventoy-hook-lib.sh b/IMG/cpio/ventoy/hook/ventoy-hook-lib.sh index db33eec2..7f24c428 100644 --- a/IMG/cpio/ventoy/hook/ventoy-hook-lib.sh +++ b/IMG/cpio/ventoy/hook/ventoy-hook-lib.sh @@ -868,3 +868,14 @@ ventoy_check_install_module_xz() { $BUSYBOX_PATH/insmod "$1" fi } + +ventoy_check_umount() { + for vtLoop in 0 1 2 3 4 5 6 7 8 9; do + $BUSYBOX_PATH/umount "$1" > /dev/null 2>&1 + if $BUSYBOX_PATH/mountpoint -q "$1"; then + $SLEEP 1 + else + break + fi + done +}