nfsd revision 227112
178344Sobrien#!/bin/sh 278344Sobrien# 398184Sgordon# $FreeBSD: head/etc/rc.d/nfsd 227112 2011-11-05 16:47:47Z dim $ 478344Sobrien# 578344Sobrien 678344Sobrien# PROVIDE: nfsd 7193354Srmacklem# REQUIRE: mountd hostname gssd nfsuserd 8180564Sdougb# KEYWORD: nojail shutdown 978344Sobrien 1078344Sobrien. /etc/rc.subr 1178344Sobrien 1278344Sobrienname="nfsd" 1398184Sgordonrcvar=`set_rcvar nfs_server` 1499550Sgordoncommand="/usr/sbin/${name}" 1578344Sobrien 16109770Smtmload_rc_config $name 17124622Smtmstart_precmd="nfsd_precmd" 18124622Smtmsig_stop="USR1" 1998184Sgordon 2098184Sgordonnfsd_precmd() 2198184Sgordon{ 22221046Srmacklem if checkyesno oldnfs_server_enable; then 23221046Srmacklem rc_flags="-o ${nfs_server_flags}" 24193354Srmacklem 25223847Srmacklem # Load the module now, so that the vfs.nfsrv sysctl 26223847Srmacklem # oids are available. 27223847Srmacklem load_kld nfsserver 28193354Srmacklem 29193354Srmacklem if checkyesno nfs_reserved_port_only; then 30193354Srmacklem echo 'NFS on reserved port only=YES' 31193354Srmacklem sysctl vfs.nfsrv.nfs_privport=1 > /dev/null 32227112Sdim else 33227112Sdim sysctl vfs.nfsrv.nfs_privport=0 > /dev/null 34193354Srmacklem fi 35221046Srmacklem else 36221046Srmacklem rc_flags="${nfs_server_flags}" 37221046Srmacklem 38221615Srmacklem # Load the modules now, so that the vfs.nfsd sysctl 39221046Srmacklem # oids are available. 40221046Srmacklem load_kld nfsd 41221046Srmacklem 42221046Srmacklem if checkyesno nfs_reserved_port_only; then 43221046Srmacklem echo 'NFS on reserved port only=YES' 44221615Srmacklem sysctl vfs.nfsd.nfs_privport=1 > /dev/null 45227112Sdim else 46227112Sdim sysctl vfs.nfsd.nfs_privport=0 > /dev/null 47221046Srmacklem fi 48221046Srmacklem 49221046Srmacklem if checkyesno nfsv4_server_enable; then 50227112Sdim sysctl vfs.nfsd.server_max_nfsvers=4 > /dev/null 51221046Srmacklem if ! checkyesno nfsuserd_enable && \ 52221046Srmacklem ! /etc/rc.d/nfsuserd forcestatus 1>/dev/null 2>&1 53221046Srmacklem then 54221046Srmacklem if ! force_depend nfsuserd; then 55221046Srmacklem err 1 "Cannot run nfsuserd" 56221046Srmacklem fi 57221046Srmacklem fi 58221046Srmacklem else 59221046Srmacklem echo 'NFSv4 is disabled' 60221615Srmacklem sysctl vfs.nfsd.server_max_nfsvers=3 > /dev/null 61221046Srmacklem fi 6298184Sgordon fi 6398184Sgordon 64101851Sgordon if ! checkyesno rpcbind_enable && \ 65101851Sgordon ! /etc/rc.d/rpcbind forcestatus 1>/dev/null 2>&1 66101851Sgordon then 67101851Sgordon force_depend rpcbind || return 1 68101851Sgordon fi 69101851Sgordon 70101851Sgordon if ! checkyesno mountd_enable && \ 71101851Sgordon ! /etc/rc.d/mountd forcestatus 1>/dev/null 2>&1 72101851Sgordon then 73101851Sgordon force_depend mountd || return 1 74101851Sgordon fi 7598184Sgordon return 0 7698184Sgordon} 7798184Sgordon 7878344Sobrienrun_rc_command "$1" 79