There are some limitations in the SMB protocol itself, particularly in
the permitted characters in file names, and also in the preservation of
file metadata (timestamps, permissions, extended attributes). These
show up mostly when using Mac or Linux with DartFS mounted via SMB.
The results depend somewhat on the tool used to do the copy. Finder
dragging is often different from command line cp or rsync
Forbidden characters in filenames <>:"/\|?* plus
ascii control-characters 0-31. See:
https://docs.microsoft.com/en-us/windows/desktop/fileio/naming-a-file
If filenames are created on Linux containing these characters, the
files will be generally visible to SMB clients, but the rendering of
the name will depend on client options.
POSIX permissions are in general not preserved, but instead you
get what a new file on the destination would have.
Timestamps are preserved by Finder drag, but not necessarily by
command line tools
MacOS Extended Attributes seem to be preserved
MacOS-specific ACLs (Access Control Lists) are not preserved.
Filename case is preserved, but SMB is case insensitive, while Linux
is case sensitive and Macs can be optionally made case sensitive.
You can not use files in the same directory which differ only in
case.