6.1 and NFS

Chuck Swiger cswiger at mac.com
Fri Sep 22 11:29:43 PDT 2006


On Sep 22, 2006, at 11:02 AM, Robert Joosten wrote:
>>> Hmmm, is there a way to run pxe-boxes without rpc.lockd and then  
>>> still
>>> able to run adduser and so on ?
>> Safely?  No.  But then, flock() doesn't work via NFS even if
>> rpc.lockd is running, so you aren't any worse off.
>
> flock() .. hmm yeah, I discoverd trouble with sendmail as well, it  
> rings
> my bell. At least I know where to look for digging in the code finding
> clues about why.
>
> You say flock() doesn't work with rpc.lockd running.

At least at one point, flock() used against an NFS-mount filesystem  
would simply return as if the call was successful, but no locking was  
done.  Whether rpc.lockd is running or not would have no impact.

> I observed running a pxe client running fbsd 5.[45] being served by  
> nfs-box running 5 (and 4
> nowadays because of asr0 trouble due to geom) having disabled  
> rpc.lockd
> the box doens't let me run adduser, but with rpc.lockd enabled it's  
> fine
> with 'em. Is that strange or am I missing (some) insight about this  
> matter?

That's interesting.  Are you getting a "could not lock the passwd  
file: EOPNOTSUPP" failure with rpc.lockd not enabled?  I suspect that  
the pw_lock() code in libutil ought to use O_EXLOCK in the open()  
call rather than calling flock() separately:

      [EOPNOTSUPP]       O_SHLOCK or O_EXLOCK is specified but the  
underlying
                         file system does not support locking.

...?

-- 
-Chuck



More information about the freebsd-questions mailing list