From 1f41c5e1d2d815e585c7a7f1f3e6306c18f8fd2b Mon Sep 17 00:00:00 2001 From: NiuTao Date: Fri, 26 Apr 2024 16:30:59 +0800 Subject: [PATCH] can not find free loop device --- scripts/make_image.sh | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/scripts/make_image.sh b/scripts/make_image.sh index fd6df74..abfa382 100755 --- a/scripts/make_image.sh +++ b/scripts/make_image.sh @@ -34,13 +34,20 @@ function make_image() if [ "$devfs" == "tmpfs" ]; then mount -t devtmpfs nodev /dev fi - cat /proc/devices + mount + ls -l /dev/loop* if [ ! -e /dev/loop500 ]; then lodev_major=$(grep loop /proc/devices | cut -c3) mknod /dev/loop500 b $lodev_major 500 LOOP=/dev/loop500 else - LOOP=$(losetup -f) + loop_used=1 + fdisk -l /dev/loop500 || loop_used=0 + if [ $loop_used == 0 ]; then + LOOP=/dev/loop500 + else + LOOP=$(losetup -f) + fi fi [[ -z $LOOP ]] && echo "Unable to find free loop device" && exit -- Gitee