One of the Perl file test operators, (-r $file) attempts to tell you whether or not you could successfully open the file for reading. All it actually tells you is whether or not your effiective UserID or effective Group ID allows read access based on the permission bits on the file. There are still other things that might prevent you fom opening the file, not the least of which are Access Control Lists that some operating systems layer on top of the standard UNIX permissions.