nfsd revision 230099
1#!/bin/sh 2# 3# $FreeBSD: head/etc/rc.d/nfsd 230099 2012-01-14 02:18:41Z dougb $ 4# 5 6# PROVIDE: nfsd 7# REQUIRE: mountd hostname gssd nfsuserd 8# KEYWORD: nojail shutdown 9 10. /etc/rc.subr 11 12name="nfsd" 13rcvar="nfs_server_enable" 14command="/usr/sbin/${name}" 15 16load_rc_config $name 17start_precmd="nfsd_precmd" 18sig_stop="USR1" 19 20nfsd_precmd() 21{ 22 if checkyesno oldnfs_server_enable; then 23 rc_flags="-o ${nfs_server_flags}" 24 25 # Load the module now, so that the vfs.nfsrv sysctl 26 # oids are available. 27 load_kld nfsserver 28 29 if checkyesno nfs_reserved_port_only; then 30 echo 'NFS on reserved port only=YES' 31 sysctl vfs.nfsrv.nfs_privport=1 > /dev/null 32 else 33 sysctl vfs.nfsrv.nfs_privport=0 > /dev/null 34 fi 35 else 36 rc_flags="${nfs_server_flags}" 37 38 # Load the modules now, so that the vfs.nfsd sysctl 39 # oids are available. 40 load_kld nfsd 41 42 if checkyesno nfs_reserved_port_only; then 43 echo 'NFS on reserved port only=YES' 44 sysctl vfs.nfsd.nfs_privport=1 > /dev/null 45 else 46 sysctl vfs.nfsd.nfs_privport=0 > /dev/null 47 fi 48 49 if checkyesno nfsv4_server_enable; then 50 sysctl vfs.nfsd.server_max_nfsvers=4 > /dev/null 51 if ! checkyesno nfsuserd_enable && \ 52 ! /etc/rc.d/nfsuserd forcestatus 1>/dev/null 2>&1 53 then 54 if ! force_depend nfsuserd; then 55 err 1 "Cannot run nfsuserd" 56 fi 57 fi 58 else 59 echo 'NFSv4 is disabled' 60 sysctl vfs.nfsd.server_max_nfsvers=3 > /dev/null 61 fi 62 fi 63 64 if ! checkyesno rpcbind_enable && \ 65 ! /etc/rc.d/rpcbind forcestatus 1>/dev/null 2>&1 66 then 67 force_depend rpcbind || return 1 68 fi 69 70 if ! checkyesno mountd_enable && \ 71 ! /etc/rc.d/mountd forcestatus 1>/dev/null 2>&1 72 then 73 force_depend mountd || return 1 74 fi 75 return 0 76} 77 78run_rc_command "$1" 79