I've just been on this same journey through wanting to use a USB drive to store recordings. This is where I put a 10 second sleep delay and works well;
# Function that starts the daemon/service
#
do_start()
{
# Return
# 0 if daemon has been started
# 1 if daemon was already running
# 2 if daemon could not be started
####################################
sleep 10