Another fixable reason for failure is custom icons on the shared drives. That creates an extended attribute (com.apple.FinderInfo) which seems to be the cause of problems for some.
You can view the extended attributes on the external drive in Terminal with:
ls -al@ /Volumes
The output of the list command will show the permissions, flags, owner, group, size, and a few other bits of info.
Below that line it will show any extended attributes. If the item has extended attributes, you will see an @ symbol after the permissions, e.g., drwxr-x-r-x@
Some extended attributes do not cause problems. So far, I only know of com.apple.FinderInfo causing issues with File Sharing. There are other reasons for com.apple.FinderInfo other than custom icons, so it is worth examining the information.
If you find that attribute, you can remove it with the following command. Copy, paste it into Terminal, leave a space, then drag your shared drive into the Terminal window--that will fill out the path to the drive. Hit return.
sudo xattr -d com.apple.FinderInfo
sudo will ask for your admin password. It will put a ? on the screen. When you type the password, you will not see anything echoed onto the screen.