#!@PREFIX@/sbin/runscript # Copyright (c) 2007-2009 Roy Marples # Released under the 2-clause BSD license. description="Mounts network shares, other than NFS, according to /etc/fstab." # We skip all NFS shares in this script because they require extra # daemons to be running on the client in order to work correctly. # It is best to allow nfs-utils to handle all nfs shares. depend() { config /etc/fstab need net use afc-client amd autofs openvpn use dns keyword -jail -prefix -vserver } start() { local x= fs= rc= for x in $net_fs_list $extra_net_fs_list; do case "$x" in nfs|nfs4) continue ;; esac fs="$fs${fs:+,}$x" done ebegin "Mounting network filesystems" mount -at $fs rc=$? if [ "$RC_UNAME" = Linux ]; then mount -a -O _netdev rc=$? fi ewend $rc "Could not mount all network filesystems" return 0 } stop() { local x= fs= ebegin "Unmounting network filesystems" . "$RC_LIBEXECDIR"/sh/rc-mount.sh for x in $net_fs_list $extra_net_fs_list; do case "$x" in nfs|nfs4) continue ;; *) fs="$fs${fs:+,}$x" ;; esac done if [ -n "$fs" ]; then umount -at $fs || eerror "Failed to simply unmount filesystems" fi eindent fs= for x in $net_fs_list $extra_net_fs_list; do case "$x" in nfs|nfs4) continue ;; *) fs="$fs${fs:+|}$x" ;; esac done [ -n "$fs" ] && fs="^($fs)$" do_unmount umount ${fs:+--fstype-regex} $fs --netdev retval=$? eoutdent if [ "$RC_UNAME" = Linux ]; then umount -a -O _netdev retval=$? fi eend $retval "Failed to unmount network filesystems" }