blob: f0431430bbbab41d8314e6b91e1e01f93719edf5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
#!/bin/bash
exec 2>&1
export TERM=linux
. /etc/rc.conf
. /etc/rc.d/functions
stat_runit "Starting NFSD"
# Make sure the statd daemon is up
# (the statd service must ensure portmap is running first)
svwaitup /var/service/nfs-common >/dev/null 2>/dev/null
source /etc/conf.d/nfs-server.conf
NFSD="/usr/sbin/rpc.nfsd"
# Default number of nfsd servers
[ -z "$NFSD_COUNT" ] && NFSD_COUNT=8
# Default mountpoint and options for nfsd filesystem
[ -z "$PROCNFSD_MOUNTPOINT" ] && PROCNFSD_MOUNTPOINT="/proc/fs/nfsd"
[ -z "$PROCNFSD_MOUNTOPTS" ] && PROCNFSD_MOUNTOPTS="rw,nodev,noexec,nosuid"
do_modprobe() {
if [ -x /sbin/modprobe -a -f /proc/modules ]; then
modprobe -q "$1" || true
fi
}
do_mount() {
if ! grep -E "$1\$" /proc/filesystems &> /dev/null ; then
return 1
fi
if grep -vw "$1" /proc/mounts &> /dev/null ; then
if ! mountpoint -q "$2" ; then
mount -t "$1" "$1" "$2" -o "$3"
return
fi
fi
return 0
}
do_umount() {
if mountpoint -q "$1" ; then
umount "$1"
fi
return 0
}
# start some nfsd threads
printhl " Using ${NFSD_OPTS} "
do_modprobe nfsd
do_mount nfsd "$PROCNFSD_MOUNTPOINT" "$PROCNFSD_MOUNTOPTS"
# Re-export all directories in /etc/exports
/usr/sbin/exportfs -ra > /dev/null 2>/dev/null
$NFSD $NFSD_OPTS $NFSD_COUNT
#
exec /usr/sbin/rpc.mountd --foreground >/dev/null 2>/dev/null
|