]> CyberLeo.Net >> Repos - FreeBSD/releng/9.0.git/blob - etc/rc.d/mountd
Copy stable/9 to releng/9.0 as part of the FreeBSD 9.0-RELEASE release
[FreeBSD/releng/9.0.git] / etc / rc.d / mountd
1 #!/bin/sh
2 #
3 # $FreeBSD$
4 #
5
6 # PROVIDE: mountd
7 # REQUIRE: NETWORKING rpcbind quota
8 # KEYWORD: nojail shutdown
9
10 . /etc/rc.subr
11
12 name="mountd"
13 rcvar=`set_rcvar`
14 command="/usr/sbin/${name}"
15 pidfile="/var/run/${name}.pid"
16 required_files="/etc/exports"
17 start_precmd="mountd_precmd"
18 extra_commands="reload"
19
20 mountd_precmd()
21 {
22         if ! checkyesno rpcbind_enable  && \
23             ! /etc/rc.d/rpcbind forcestatus 1>/dev/null 2>&1
24         then
25                 force_depend rpcbind || return 1
26         fi
27
28         # mountd flags will differ depending on rc.conf settings
29         #
30         if checkyesno nfs_server_enable ; then
31                 if checkyesno weak_mountd_authentication; then
32                         rc_flags="${mountd_flags} -n"
33                 fi
34         else
35                 if checkyesno mountd_enable; then
36                         checkyesno weak_mountd_authentication && rc_flags="-n"
37                 fi
38         fi
39
40         # If oldnfs_server_enable is yes, force use of the old NFS server
41         #
42         if checkyesno oldnfs_server_enable; then
43                 rc_flags="-o ${rc_flags}"
44         fi
45
46         if checkyesno zfs_enable; then
47                 rc_flags="${rc_flags} /etc/exports /etc/zfs/exports"
48         fi
49
50         rm -f /var/db/mountdtab
51         ( umask 022 ; > /var/db/mountdtab )
52         return 0
53 }
54
55 load_rc_config $name
56 run_rc_command "$1"