Hi--
I/O errors are caused by different problems. First, they can be caused by physical problems with the disk, i.e., a problem with the media on the platter of a hard drive, also known as bad blocks. They can also be cause by faulty cabling, either defective cables or cables that aren't properly seated. Finally, they could also be caused by a faulty drive controller, the chip that translates the commands from the OS to the disk drive.
One thing you can do is look in your Console application (from the Utilities folder) at the console and system log. When you get a disk I/O error, look in there and see which disk has the error. It will be a little cryptic, with the BSD identifider, usually something like "disk0s9", though the numbers will change. Then you can look up that information in the Disk Utility program. Just click the name of each volume, (not the name of the drive) and get info to look up the identifier.
You can also get the list of disks a bit easier by opening the Terminal app and running this command:
<pre class="command">diskutil list</pre>
You'll get a list a little bit like this:
/dev/disk0
#: type name size identifier
0: GUIDpartitionscheme *232.9 GB disk0
1: EFI 200.0 MB disk0s1
2: Apple_HFS Macintosh HD 94.9 GB disk0s2
3: Apple_HFS Partition 2 14.9 GB disk0s3
4: Apple_HFS Partition 3 122.6 GB disk0s4
/dev/disk1
#: type name size identifier
0: CDpartitionscheme Live At Leeds [Deluxe Edition] *742.1 MB disk1
1: CD_DA 51.7 MB disk1s1
2: CD_DA 32.5 MB disk1s2
3: CD_DA 26.1 MB disk1s3
4: CD_DA 37.4 MB disk1s4
5: CD_DA 62.5 MB disk1s5
6: CD_DA 21.4 MB disk1s6
7: CD_DA 22.5 MB disk1s7
8: CD_DA 78.5 MB disk1s8
9: CD_DA 89.6 MB disk1s9
10: CD_DA 34.0 MB disk1s10
11: CD_DA 46.2 MB disk1s11
12: CD_DA 159.6 MB disk1s12
13: CD_DA 80.0 MB disk1s13
That's what I see on my computer where I have the main hard drive partitioned into 3 parts, plus a CD inserted.
Once you know where the errors are happening, you can track them down by determining if it's a write operation or a read operation causing the error. Also, see if you can narrow it down to a single file or files.
charlie