lockd(1M) lockd(1M) NAME lockd - NFS lock daemon SYNOPSIS /usr/etc/rpc.lockd [ -g graceperiod ] [ -l ] [ nservers ] DESCRIPTION lockd provides the inherently stateful locking services within the stateless NFS environment. It allows the locking of records and files between applications running on different physical machines sharing the same filesystems mounted with NFS. nservers is the number of lockd servers to start. Locks are presently advisory only. The lock style implemented by lockd is that specified in the SVID (see lockf(3C) and fcntl(2)). There is no interaction between the lockd's locks and flock(3B) style locks. lockd is started during system initialization if the chkconfig(1M) lockd flag is set on. Command-line options belong in /etc/config/lockd.options. If nfsd(1M) is running, lockd registers its RPC services and exits, leaving nfsd to handle the requests. lockd processes lock requests that are either sent locally by the kernel or remotely by another lock daemon. In the case of local lock requests for remote data, lockd forwards the lock requests to the server site's lock daemon through the RPC/XDR(3R) package. lockd then requests the local status monitor daemon, statd(1M), for monitor service of the server. The reply to the lock request is not sent to the kernel until the status daemon and the server site's lock daemon have replied. When a server recovers, it waits for a grace period for all client site lockds to submit reclaim requests. Client site lockds are notified by the statd of the server recovery and promptly resubmit previously granted lock requests. If a lockd fails to secure a previously granted lock at the server site, it sends SIGUSR1 to the application process. The process must explicitly handle this signal if the loss of a lock should cause it to terminate. OPTIONS -g graceperiod lockd uses graceperiod (seconds) as the grace period duration instead of the default value (see TUNING below). -l Set SVID locks for files which are locked by DOS machines running PC-NFS and compatible file sharing utilities. Normally, lockd does not set SVID locks for such requests. TUNING lockd has four tunable parameters: lockd_grace_period, lock_share_requests, nlm_granted_timeout, and nlm_maxdupreqs. lockd_grace_period controls the starup grace period for the reclaiming of locks. This was previously controlled by the -g command line option. Lock_share_requests tells lockd to preform UNIX file locking for share and unshare requests. Nlm_granted_timeout controls the timeout used in making NLM_GRANTED and NLMPROC_GRANTED callbacks for blocked lock requests which have been granted. This value is specified in tenths of a second. Nlm_maxdupreqs controls how many NLM RPC duplicate request cache entries are allocated. The default setting is 0. This causes the allocation to be sized based upon the memory size of the system. NOTES The reply to a lock request for remote data is delayed until all daemons become available. In the Sun implementation, lockd sends SIGLOST. when a lock is lost. The IRIX implementation sends SIGUSR1. Programs should establish a signal handler to catch this signal and exit. For client operations, lockd is no longer used as the intermediary for NLM RPCs. The kernel makes the RPCs to the server directly. These calls all use UDP. There is no support for TCP as a transport for NLM RPCs on the client side. Since NLM RPCs are handled by the NFS server nfsd, both TCP and UDP are accepted as transports on the server side. For blocked lock requests, however, the NLM_GRANTED or NLM_GRANTED_MSG RPC will be sent using UDP regardless of what transport the client used. SEE ALSO statd(1M), fcntl(2), signal(2), lockf(3C). Page 2