For a while now, my trusty 20gb iPod Photo has been having uncharacteristically weird problems syncing with iTunes. It would often stop syncing with the error "Disk cannot be read from or written to". Finally, it got so bad that it hardly sync'd any files at all. Looking in the Mac OS Console utility (/Applications/Utilites/Console.app), I finally noticed everytime this happened, the Mac would report "data underrun" errors.
So at this point, I thought perhaps it was a corrupted iPod hard drive. I tried restoring my iPod a few times, even completely erased the parition at one point using Disk Utility. I even tried an anecdotal method that requires that you change your Mac's timezone to PST, restore the iPod and then revert your timezone. But the iPod still had the same problem syncing.
Then I came across some forum postings that mention that iTunes will choke on the syncing, if the file it's trying to copy is not readable by iTunes. I checked all my file permissions but they were all fine (readable/writeable by my user on the Mac), so that was a dead end.
Then I found some sites that mentions the iPod's hidden diagnostic menus. Running the iPod diagnostics helped point me in the right direction. I ran all the iPod hard drive tests and they all said it was OK. So I figured that the drive was probably still okay. I also tried my own crude write tests to the iPod drive:
$ cd /Volumes/iPod
$ mkfile 5g 5gig.file
"mkfile" is a UNIX level command that let's you create a file of a given size easily. I was able to create pretty much any size file on the iPod without any errors. So at this point, I figure it's maybe an OS or application level issue.