Deleted Added
sdiff udiff text old ( 222993 ) new ( 223310 )
full compact
1#!/bin/sh
2#
3# $FreeBSD: head/etc/rc.d/mountcritremote 223310 2011-06-19 22:48:40Z dougb $
4#
5
6# PROVIDE: mountcritremote
7# REQUIRE: NETWORKING FILESYSTEMS cleanvar ipsec netwait
8# KEYWORD: nojail
9
10. /etc/rc.subr
11
12name="mountcritremote"
13stop_cmd=":"
14start_cmd="mountcritremote_start"
15start_precmd="mountcritremote_precmd"
16
17# Mount NFS filesystems if present in /etc/fstab
18#
19# XXX When the vfsload() issues with nfsclient support and related sysctls
20# have been resolved, this block can be removed, and the condition that
21# skips nfs in the following block (for "other network filesystems") can
22# be removed.
23#
24mountcritremote_precmd()
25{
26 case "`mount -d -a -t nfs 2> /dev/null`" in
27 *mount_nfs*)
28 # Handle absent nfs client support
29 load_kld -m nfs nfscl || return 1
30 ;;
31 esac
32 return 0
33}
34
35mountcritremote_start()
36{
37 # Mount nfs filesystems.
38 #
39 case "`/sbin/mount -d -a -t nfs`" in
40 '')
41 ;;
42 *)
43 echo -n 'Mounting NFS file systems:'
44 mount -a -t nfs
45 echo '.'
46 ;;
47 esac
48
49 # Mount other network filesystems if present in /etc/fstab.
50 case ${extra_netfs_types} in
51 [Nn][Oo])
52 ;;
53 *)
54 netfs_types="${netfs_types} ${extra_netfs_types}"
55 ;;
56 esac
57
58 for i in ${netfs_types}; do
59 fstype=${i%:*}
60 fsdecr=${i#*:}
61
62 [ "${fstype}" = "nfs" ] && continue
63
64 case "`mount -d -a -t ${fstype}`" in
65 *mount_${fstype}*)
66 echo -n "Mounting ${fsdecr} file systems:"
67 mount -a -t ${fstype}
68 echo '.'
69 ;;
70 esac
71 done
72
73 # Cleanup /var again just in case it's a network mount.
74 /etc/rc.d/cleanvar quietreload
75 rm -f /var/run/clean_var /var/spool/lock/clean_var
76}
77
78load_rc_config $name
79run_rc_command "$1"