Subject: Re: Odd grunging with grep(1)
To: Charles M. Hannum <>
From: Brain fried. Explanation is in file "core". <>
List: tech-pkg
Date: 10/25/1998 07:59:23
"Charles M. Hannum" sez:
 * So I noticed something odd while installing a pkg (specifically xpm)
 * with /usr/pkgsrc in NFS...
 * ===>  Registering installation for xpm-3.4k
 * grep: /u1/usr/pkgsrc/graphics/xpm/files/CVS: Operation not permitted
 * grep: /u1/usr/pkgsrc/graphics/xpm/pkg/CVS: Operation not permitted
 * This seems Wrong.

Why so?  You can't open() an NFS'd directory, and if you're doing

	grep $pat $pkg/files/* $pkg/pkg/*

and there's a CVS directory, AND it's on NFS, you can expect those
kinds of messages to show up.  NFS protocol apparently requires the
use of NFS_OPENDIR (or its moral equivalent, whatever it's called)
across RPC; if you try to use NFS_OPEN on a directory, the NFS server
will return EPERM.

I've been running into this one since the OLD SunOS days (3.x).

It is interesting to note that open() will still work on a local
directory; probably because there is no ufs_opendir() in the kernel
-- it's still implemented as wrappers around open() locally; I believe
(I'm not looking at my tree right now) that nfs_open() and nfs_opendir()
[or their moral equivalents] _are_ implemented in the kernel.


Bought the planet (paid cash).