To be able to run a 'mount /dev/something' from '/opt/bootlocal.sh' it is important that at the time that 'rebuildfstab' is called in '/etc/init.d/tc-config' ALL respective devices were correctly recognised by the kernel. For USB drives this will require in almost all cases to use the 'waitusb=x' boot code (with a suitable choosen delay value of 'x' seconds, e.g. 5, 10 or 15). I trust your were aware of the need to use 'waitusb', but is your value "good enough"?
To troubleshoot your issue I'd suggest to insert ( date ; cat '/etc/fstab' ) >> /tmp/boot.log at the very start of '/opt/bootlocal.sh'. That way you'd be able to tell whether '/etc/fstab' has all the entries at the critical point in time.