I hate to disagree. I really really do. Really. But this is what I would do.
If the Mac is running the new Mac OS X, the one based on BSD Unix, I would do this.
1) Log on as root.
2) Create a mount point. (/problem)
3) Mount the disk read only and with GID=100. This will mount the disk partition as being owned by the users group. Then you can use a normal user account to access the files.
4) Log on as a normal user and try to copy the files to another disk.
If the Mac disk is mapped to /dev/sda1 then I would do this.
Code:
root> mkdir /problem
root> mount -o ro,gid=100 /dev/sda1 /problem
root> su - normaluser
$ ls /problem
$ cp -R /problem <somewhere-else>