Bug 112598 - /etc/init.d/nfs does not respect LOCKD_TCPPORT & LOCKD_UDPPORT
/etc/init.d/nfs does not respect LOCKD_TCPPORT & LOCKD_UDPPORT
Product: Fedora
Classification: Fedora
Component: nfs-utils (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: Steve Dickson
Ben Levenson
Depends On:
  Show dependency treegraph
Reported: 2003-12-23 23:19 EST by Kevin Street
Modified: 2007-11-30 17:10 EST (History)
0 users

See Also:
Fixed In Version: nfs-utils-1.0.6-2
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2003-12-27 17:34:21 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
patch for /etc/init.d/nfs (1.09 KB, patch)
2003-12-23 23:41 EST, Kevin Street
no flags Details | Diff
Fix that starts and stops nfsd once if necessary to create the needed parameter keys (438 bytes, patch)
2004-05-27 10:09 EDT, Heiko Ettelbrück
no flags Details | Diff

  None (edit)
Description Kevin Street 2003-12-23 23:19:35 EST
Description of problem:
setting LOCKD_TCPPORT & LOCKD_UDPPORT in /etc/sysconfig/nfs have no
effect on reboot (but work with service nfs restart)

Version-Release number of selected component (if applicable):

How reproducible:
always on boot
(run rpcinfo -p to confirm that nlockmgr is using random ports)

Steps to Reproduce:
1.as above
Actual results:
nlockmgr uses random high ports after boot but uses the correct ports
after service nfs restart

Expected results:
nlockmgr uses the ports specified in /etc/sysconfig/nfs

Additional info:
Comment 1 Kevin Street 2003-12-23 23:41:36 EST
Created attachment 96688 [details]
patch for /etc/init.d/nfs

two fixes:
- the main problem is that the sysctl -w fs.nfs.nlm_tcpport (& udpport) fails
with "unknown key" when booting.  Moving the call to exportfs before the sysctl
fixes this.  It works ok with service nfs restart.

- the tests like [ -n "LOCKD_TCPPORT ] should be [ -n "$LOCKD_TCPPORT ] but I
believe these are harmless here.
Comment 2 Heiko Ettelbrück 2004-05-27 10:09:36 EDT
Created attachment 100631 [details]
Fix that starts and stops nfsd once if necessary to create the needed parameter keys

With Fedora Core 2 I see the same behaviour (LOCKD_TCPPORT and LOCKD_UDPPORT
have no effect) although Kevin's fix has been integrated into /etc/init.d/nfs.
Even though exportfs is called before trying to set those values via sysctl,
the two calls fail with the well-known message about using an "unknown key", as
Kevin got.

Playing around, it seems that the keys fs.nfs.* are available when the kernel
nfsd has been started at least once, which is done some lines after trying to
set the values in the init script.

--> Fix (that works at least for me):
Start and stop the kernel nfsd once before setting the TCP and UDP ports in
/etc/init.d/nfs (see attached diff).

Note You need to log in before you can comment on or make changes to this bug.