Skip to content

Instantly share code, notes, and snippets.

@vbatts
Created November 6, 2014 15:35
Show Gist options
  • Save vbatts/1ad1d641786618ba061a to your computer and use it in GitHub Desktop.
Save vbatts/1ad1d641786618ba061a to your computer and use it in GitHub Desktop.
ensure enough loop devices. Pulled from https://github.com/jpetazzo/dind/issues/19#issuecomment-48859883 but ensure there are at least 4 loop devices
#!/bin/bash
ensure_loop(){
num="$1"
dev="/dev/loop$num"
if test -b "$dev"; then
echo "$dev is a usable loop device."
return 0
fi
echo "Attempting to create $dev for docker ..."
if ! mknod -m660 $dev b 7 $num; then
echo "Failed to create $dev!" 1>&2
return 3
fi
return 0
}
LOOP_A=$(losetup -f)
LOOP_A=${LOOP_A#/dev/loop}
LOOP_B=$(expr $LOOP_A + 1)
LOOP_C=$(expr $LOOP_B + 1)
LOOP_D=$(expr $LOOP_C + 1)
ensure_loop $LOOP_A
ensure_loop $LOOP_B
ensure_loop $LOOP_C
ensure_loop $LOOP_D
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment