07-25-2012 03:53 AM
On our HP-UX box (11.31, Itanium) I have mounted an NFS file system which is using squash_all, so all files on that NFS file system are owned by anonuid=600 and anongid=500. That works perfectly fine for a number of operations on the file system or on individual files, meaning a non-root user with uid != 600 and not a member of the group 500 can still create, write to or delete files on the NFS mounted file system.
What doesn't work though is any operation through utime, i.e. either just
cp -p file1 file2
In the case of touch, no error is reported but also nothing happends. Times remain unchanged.
In the case of cp -p the file copy operation works fine, but afterwards, setting the timestamp of the file copy to that of the original file fails with
cp: utime failed <filename>: Not owner
This isn't a problem of the implementation of either touch or cp in HP-UX IMO. I tied the same using the GNU coreutils; same problem. It's the actual system call which refuses the operation.
Mounting the very same NFS file system on a Solaris or Linux client doesn't cause that problem; the behaviour there is just as expected. The file server which exports that file system is AIX and we're on NFSv3, just to provide the complete picture.
Any idea would be welcome. Am I missing any mount options here? In the answer maybe hidden somewhere in man 5 privileges?
08-03-2012 01:35 PM
Have you tried collecting a nettl trace of the failing cp command on the 11i v3 client? I'd be curious which part of the copy/touch command is failing over the wire between the client and server.