My backup could never finish because the IO errors would start mid-way into the rsync, and despite running rsync repeatedly, at some point the sync would not progress beyond updating existing files.
I'm worried about permissions and uid/gid, since they have to be preserved in the copy (I know rsync does this). The destination is empty, so I don't have to worry about conditionally updating some files.
Insufficient privileges, anti-virus, are easier to diagnose.
Lastly, if you have a bad sector on your SRC directory, you may exclude that from future runs of rsync by means of An anti-virus locks files for some time.
The nice thing about rsync is that you can have it md5 sum the files to detect differences.-P or --progress shows progress for each file individually.
Alternatively, you may discover that you cannot access the file in the SRC directory.
In this case I suggest that you employ any of the disk checking utilities available to your distro.
If you cannot do that, check that the files on which rsync fails are accessible to you, i.e.
they belong to the account trying to access them, and if they don't that you have read access to them.
If you're paranoid (like after a power outage during copy) you can force checksumming on all files, but on a local transfer, that's usually slower than starting from scratch.