One that always annoyed me was running a 32 bit binary on a 64 bit Linux system - it says file not found, and when I first encountered that it threw me for a little while.
> ENOENT The file pathname or a script or ELF interpreter does not exist.
(Well, I just knew the answer in this case because I've hit this particular error a bunch of times, but that's not really the point.)
I actually agree with jmgao's point that this inscrutability is the downside of syscalls' limited error return; just pointing out the good as well as the bad.