Add support for the experimental nfs subsystem to the scripts in
/etc/rc.d. They use the following new rc variables: nfsv4_server_enable - set to "YES" to run the experimental server nfsuserd_enable - set to "YES" to run nfsuserd for NFSv4 client and server nfsuserd_flags - command line flags for nfsuserd nfscbd_enable - set to "YES" to run the experimental nfs client's NFSv4 callback daemon nfscbd_flags - command line flags for nfscbd Reviewed by: dougb Approved by: kib (mentor)
This commit is contained in:
parent
3050678410
commit
f0a011a1b1
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=193354
@ -315,6 +315,11 @@ rpcbind_flags="" # Flags to rpcbind (if enabled).
|
||||
rpc_ypupdated_enable="NO" # Run if NIS master and SecureRPC (or NO).
|
||||
keyserv_enable="NO" # Run the SecureRPC keyserver (or NO).
|
||||
keyserv_flags="" # Flags to keyserv (if enabled).
|
||||
nfsv4_server_enable="NO" # Enable support for NFSv4
|
||||
nfscbd_enable="NO" # NFSv4 client side callback daemon
|
||||
nfscbd_flags="" # Flags for nfscbd
|
||||
nfsuserd_enable="NO" # NFSv4 user/group name mapping daemon
|
||||
nfsuserd_flags="" # Flags for nfsuserd
|
||||
|
||||
### Network Time Services options: ###
|
||||
timed_enable="NO" # Run the time daemon (or NO).
|
||||
|
@ -23,8 +23,8 @@ FILES= DAEMON FILESYSTEMS LOGIN NETWORKING SERVERS \
|
||||
mixer motd mountcritlocal mountcritremote mountlate \
|
||||
mdconfig mdconfig2 mountd moused mroute6d mrouted msgs \
|
||||
named natd netif netoptions \
|
||||
network_ipv6 newsyslog nfsclient nfsd \
|
||||
nfsserver nisdomain nsswitch ntpd ntpdate \
|
||||
network_ipv6 newsyslog nfsclient nfscbd nfsd \
|
||||
nfsserver nfsuserd nisdomain nsswitch ntpd ntpdate \
|
||||
othermta \
|
||||
pf pflog pfsync \
|
||||
powerd power_profile ppp pppoed pwcheck \
|
||||
|
@ -37,6 +37,13 @@ mountd_precmd()
|
||||
fi
|
||||
fi
|
||||
|
||||
# If nfsv4_server_enable is yes, force use of the experimental
|
||||
# server
|
||||
#
|
||||
if checkyesno nfsv4_server_enable; then
|
||||
rc_flags="-e ${rc_flags}"
|
||||
fi
|
||||
|
||||
if checkyesno zfs_enable; then
|
||||
rc_flags="${rc_flags} /etc/exports /etc/zfs/exports"
|
||||
fi
|
||||
|
19
etc/rc.d/nfscbd
Executable file
19
etc/rc.d/nfscbd
Executable file
@ -0,0 +1,19 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# $FreeBSD$
|
||||
#
|
||||
|
||||
# PROVIDE: nfscbd
|
||||
# REQUIRE: NETWORKING nfsuserd
|
||||
# KEYWORD: nojail shutdown
|
||||
|
||||
. /etc/rc.subr
|
||||
|
||||
name="nfscbd"
|
||||
rcvar=`set_rcvar`
|
||||
command="/usr/sbin/${name}"
|
||||
sig_stop="USR1"
|
||||
|
||||
load_rc_config $name
|
||||
|
||||
run_rc_command "$1"
|
@ -4,7 +4,7 @@
|
||||
#
|
||||
|
||||
# PROVIDE: nfsd
|
||||
# REQUIRE: mountd hostname gssd
|
||||
# REQUIRE: mountd hostname gssd nfsuserd
|
||||
# KEYWORD: nojail shutdown
|
||||
|
||||
. /etc/rc.subr
|
||||
@ -14,14 +14,33 @@ rcvar=`set_rcvar nfs_server`
|
||||
command="/usr/sbin/${name}"
|
||||
|
||||
load_rc_config $name
|
||||
command_args="${nfs_server_flags}"
|
||||
start_precmd="nfsd_precmd"
|
||||
sig_stop="USR1"
|
||||
|
||||
nfsd_precmd()
|
||||
{
|
||||
if ! sysctl vfs.nfsrv >/dev/null 2>&1; then
|
||||
force_depend nfsserver || return 1
|
||||
if checkyesno nfsv4_server_enable; then
|
||||
# If nfsv4_server_enable is yes, force use
|
||||
# of the experimental server
|
||||
#
|
||||
rc_flags="-e ${nfs_server_flags}"
|
||||
|
||||
if ! checkyesno nfsuserd_enable && \
|
||||
! /etc/rc.d/nfsuserd forcestatus 1>/dev/null 2>&1
|
||||
then
|
||||
force_depend nfsuserd || return 1
|
||||
fi
|
||||
else
|
||||
rc_flags="${nfs_server_flags}"
|
||||
|
||||
if ! sysctl vfs.nfsrv >/dev/null 2>&1; then
|
||||
force_depend nfsserver || return 1
|
||||
fi
|
||||
|
||||
if checkyesno nfs_reserved_port_only; then
|
||||
echo 'NFS on reserved port only=YES'
|
||||
sysctl vfs.nfsrv.nfs_privport=1 > /dev/null
|
||||
fi
|
||||
fi
|
||||
|
||||
if ! checkyesno rpcbind_enable && \
|
||||
@ -35,11 +54,6 @@ nfsd_precmd()
|
||||
then
|
||||
force_depend mountd || return 1
|
||||
fi
|
||||
|
||||
if checkyesno nfs_reserved_port_only; then
|
||||
echo 'NFS on reserved port only=YES'
|
||||
sysctl vfs.nfsrv.nfs_privport=1 > /dev/null
|
||||
fi
|
||||
return 0
|
||||
}
|
||||
|
||||
|
19
etc/rc.d/nfsuserd
Executable file
19
etc/rc.d/nfsuserd
Executable file
@ -0,0 +1,19 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# $FreeBSD$
|
||||
#
|
||||
|
||||
# PROVIDE: nfsuserd
|
||||
# REQUIRE: NETWORKING
|
||||
# KEYWORD: nojail shutdown
|
||||
|
||||
. /etc/rc.subr
|
||||
|
||||
name="nfsuserd"
|
||||
rcvar=`set_rcvar`
|
||||
command="/usr/sbin/${name}"
|
||||
sig_stop="USR1"
|
||||
|
||||
load_rc_config $name
|
||||
|
||||
run_rc_command "$1"
|
Loading…
Reference in New Issue
Block a user