Rsync gives this error — ENODATA — if the file is truncated while being read. I don't know why the files in /sys have this behavior, but since they're not real files, I guess it's not too surprising. There doesn't seem to be away to tell it to skip this particular check.
I think you're probably better off not rsyncing /sys and using specific scripts to cherry-pick out the particular information you want (like the network card address).