Copyright (c) 2002-2007 Apple Inc. All rights reserved.

@APPLE_LICENSE_HEADER_START@

This file contains Original Code and/or Modifications of Original Code
as defined in and that are subject to the Apple Public Source License
Version 2.0 (the 'License'). You may not use this file except in
compliance with the License. Please obtain a copy of the License at
http://www.opensource.apple.com/apsl/ and read it before using this
file.

The Original Code and all software distributed under the License are
distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
Please see the License for the specific language governing rights and
limitations under the License.

@APPLE_LICENSE_HEADER_END@

$NetBSD: rpc.lockd.8,v 1.5 2000/06/09 18:51:47 cgd Exp $
$FreeBSD: src/usr.sbin/rpc.lockd/rpc.lockd.8,v 1.14 2002/07/14 14:45:36 charnier Exp $

Copyright (c) 1995 A.R.Gordon, andrew.gordon@net-tel.co.uk
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. All advertising materials mentioning features or use of this software
must display the following acknowledgement:
This product includes software developed by the University of
California, Berkeley and its contributors.
4. Neither the name of the University nor the names of its contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.


.Dd January 9, 2007 .Dt RPC.LOCKD 8 .Os .Sh NAME .Nm rpc.lockd .Nd NFS file locking daemon .Sh SYNOPSIS .Nm .Op Fl d Ar debug_level .Op Fl g Ar grace_period .Op Fl x Ar host_monitor_cache_period .Sh DESCRIPTION The .Nm utility provides monitored and unmonitored file and record locking services in an NFS environment. To monitor the status of hosts requesting locks, the locking daemon typically operates in conjunction with .Xr rpc.statd 8 .

p The .Nm utility runs whenever its services are needed to support either the NFS server (see .Xr nfsd 8 ) or the NFS client (an NFS file system on which file locking requests have been made). The daemon will remain running until a short time after its services are no longer needed to support either the NFS client or NFS server. .Nm will also make sure that the .Cm statd service (on which it depends) is running.

p The following is a list of command line options that are available. However, since .Nm is normally started by .Xr launchd 8 , configuration of these options should be controlled using the equivalent settings in the NFS configuration file. See .Xr nfs.conf 5 for a list of tunable parameters. l -tag -width indent t Fl d The .Fl d option causes debugging information to be written to syslog, recording all RPC transactions to the daemon. These messages are logged with level .Dv LOG_DEBUG and facility .Dv LOG_DAEMON . Specifying a .Ar debug_level of 1 results in the generation of one log line per protocol operation. Higher debug levels can be specified, causing display of operation arguments and internal operations of the daemon. t Fl g The .Fl g option allows to specify the .Ar grace period (in seconds). During the grace period .Nm only accepts requests from hosts which are reinitialising locks which existed before the server restart. Default is 45 seconds. t Fl x The .Fl x option tells rpc.lockd how long to cache state records for monitored hosts. Setting it to zero will disable the cache which will make lock and unlock requests from a single client more expensive because of additional interaction with the client's statd. The default cache time is 60 seconds. .El

p Error conditions are logged to syslog, irrespective of the debug level, using log level .Dv LOG_ERR and facility .Dv LOG_DAEMON .

p .Sh FILES l -tag -width /usr/include/rpcsvc/nlm_prot.x -compact t Pa /var/run/lockd.pid The pid of the current .Cm lockd daemon. t Pa /System/Library/LaunchDaemons/com.apple.lockd.plist The .Cm lockd service's property list file for .Xr launchd 8 . t Pa /usr/include/rpcsvc/nlm_prot.x RPC protocol specification for the network lock manager protocol. .El .Sh SEE ALSO .Xr nfs.conf 5 , .Xr rpc.statd 8 , .Xr syslog 3 , .Xr launchd 8 .Sh BUGS The current implementation serialises locks requests that could be shared. .Sh STANDARDS The implementation is based on the specification in .Rs .%B "X/Open CAE Specification C218" .%T "Protocols for X/Open PC Interworking: XNFS, Issue 4" .%O ISBN 1 872630 66 9 .Re .Sh HISTORY A version of .Nm appeared in .Tn SunOS 4.