X-Git-Url: https://glassweightruler.freedombox.rocks/gitweb/Ventoy.git/blobdiff_plain/ebaa4d954aa0b3d70f14b2fd6fec63df1599b8ce..17da2e2a21bb3eb37bfc2a3b0dbba12fdcd04a1d:/INSTALL/tool/VentoyWorker.sh diff --git a/INSTALL/tool/VentoyWorker.sh b/INSTALL/tool/VentoyWorker.sh index d353c45..11191cb 100644 --- a/INSTALL/tool/VentoyWorker.sh +++ b/INSTALL/tool/VentoyWorker.sh @@ -15,12 +15,12 @@ print_usage() { echo ' -r SIZE_MB preserve some space at the bottom of the disk (only for install)' echo ' -s/-S enable/disable secure boot support (default is disabled)' echo ' -g use GPT partition style, default is MBR (only for install)' - echo ' -L Label of the 1st exfat partition (default is ventoy)' + echo ' -L Label of the 1st exfat partition (default is Ventoy)' echo '' } -VTNEW_LABEL='ventoy' +VTNEW_LABEL='Ventoy' RESERVE_SIZE_MB=0 while [ -n "$1" ]; do if [ "$1" = "-i" ]; then @@ -121,17 +121,11 @@ if [ "$MODE" = "list" ]; then echo "Disk Partition Style : MBR" fi - vtPART2=$(get_disk_part_name $DISK 2) - rm -rf ./tmpmntp2 && mkdir ./tmpmntp2 - mount $vtPART2 ./tmpmntp2 > /dev/null 2>&1 - - if [ -e ./tmpmntp2/EFI/BOOT/MokManager.efi ]; then + if check_disk_secure_boot $DISK; then echo "Secure Boot Support : YES" else echo "Secure Boot Support : NO" fi - umount ./tmpmntp2 > /dev/null 2>&1 - rm -rf ./tmpmntp2 else echo "Ventoy Version: NA" fi @@ -331,8 +325,8 @@ if [ "$MODE" = "install" ]; then mkdir ./tmp_mnt vtdebug "mounting part2 ...." - for tt in 1 2 3; do - if mount ${PART2} ./tmp_mnt; then + for tt in 1 2 3 4 5; do + if mount ${PART2} ./tmp_mnt > /dev/null 2>&1; then vtdebug "mounting part2 success" break fi @@ -340,7 +334,7 @@ if [ "$MODE" = "install" ]; then mtpnt=$(grep "^${PART2}" /proc/mounts | awk '{print $2}') if [ -n "$mtpnt" ]; then umount $mtpnt >/dev/null 2>&1 - fi + fi sleep 2 done @@ -422,7 +416,8 @@ else dd status=none conv=fsync if=${DISK} skip=2040 bs=512 count=8 of=./rsvdata.bin if [ "$PART1_TYPE" = "EE" ]; then - vtdebug "This is GPT partition style ..." + vtdebug "This is GPT partition style ..." + echo -en '\x22' | dd status=none of=$DISK conv=fsync bs=1 count=1 seek=92 xzcat ./boot/core.img.xz | dd status=none conv=fsync of=$DISK bs=512 count=2014 seek=34 echo -en '\x23' | dd of=$DISK conv=fsync bs=1 count=1 seek=17908 status=none else @@ -450,13 +445,15 @@ else if [ "$SECUREBOOT" != "YES" ]; then mkdir ./tmp_mnt - vtdebug "mounting part2 ...." - for tt in 1 2 3; do - if mount ${PART2} ./tmp_mnt; then + vtdebug "mounting part2 ...." + for tt in 1 2 3 4 5; do + if mount ${PART2} ./tmp_mnt > /dev/null 2>&1; then vtdebug "mounting part2 success" break + else + vtdebug "mounting part2 failed, now wait and retry..." fi - sleep 2 + sleep 2 done rm -f ./tmp_mnt/EFI/BOOT/BOOTX64.EFI @@ -471,7 +468,7 @@ else for tt in 1 2 3; do - if umount ./tmp_mnt; then + if umount ./tmp_mnt > /dev/null 2>&1; then vtdebug "umount part2 success" rm -rf ./tmp_mnt break