08dfafc437
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
30 lines
625 B
Bash
Executable File
30 lines
625 B
Bash
Executable File
#!/bin/sh
|
|
|
|
# Seconds to try to reread partition table
|
|
cnt=60
|
|
|
|
exec </dev/null
|
|
exec >"/tmp/${0##*/}.$$.out"
|
|
exec 2>&1
|
|
|
|
(
|
|
echo "Running: $0"
|
|
echo "Env:"
|
|
env | sort
|
|
|
|
while sleep 1; test $cnt != 0; do
|
|
echo "Trying to reread partition table on $DEVNAME ($cnt)"
|
|
cnt=$((cnt-1))
|
|
# If device node doesn't exist, it means the device was removed.
|
|
# Stop trying.
|
|
test -e "$DEVNAME" || { echo "$DEVNAME doesn't exist, aborting"; exit 1; }
|
|
#echo "$DEVNAME exists"
|
|
if blockdev --rereadpt "$DEVNAME"; then
|
|
echo "blockdev --rereadpt succeeded"
|
|
exit 0
|
|
fi
|
|
echo "blockdev --rereadpt failed, exit code: $?"
|
|
done
|
|
echo "Timed out"
|
|
) &
|