mountcritlocal revision 123532
1251609Sdim#!/bin/sh 2251609Sdim# 3251609Sdim# $NetBSD: mountcritlocal,v 1.7 2002/04/29 12:29:53 lukem Exp $ 4251609Sdim# $FreeBSD: head/etc/rc.d/mountcritlocal 123532 2003-12-14 09:42:02Z seanc $ 5251609Sdim# 6251609Sdim 7251609Sdim# PROVIDE: mountcritlocal 8251609Sdim# REQUIRE: root ataraid 9251609Sdim# KEYWORD: FreeBSD NetBSD 10251609Sdim 11251609Sdim. /etc/rc.subr 12251609Sdim 13251609Sdimname="mountcritlocal" 14251609Sdimstart_cmd="mountcritlocal_start" 15251609Sdimstop_cmd=":" 16251609Sdim 17251609Sdimmountcritlocal_start() 18251609Sdim{ 19251609Sdim case ${OSTYPE} in 20251609Sdim FreeBSD) 21251609Sdim # Set up the list of network filesystem types for which mounting 22251609Sdim # should be delayed until after network initialization. 23251609Sdim case ${extra_netfs_types} in 24251609Sdim [Nn][Oo]) 25251609Sdim ;; 26251609Sdim *) 27251609Sdim netfs_types="${netfs_types} ${extra_netfs_types}" 28251609Sdim ;; 29251609Sdim esac 30251609Sdim 31251609Sdim # Mount everything except nfs filesystems. 32251609Sdim mount_excludes='no' 33251609Sdim for i in ${netfs_types}; do 34251609Sdim fstype=${i%:*} 35251609Sdim mount_excludes="${mount_excludes}${fstype}," 36251609Sdim done 37251609Sdim mount_excludes=${mount_excludes%,} 38251609Sdim mount -a -t ${mount_excludes} 39251609Sdim 40251609Sdim case $? in 41251609Sdim 0) 42251609Sdim ;; 43251609Sdim *) 44251609Sdim echo 'Mounting /etc/fstab filesystems failed,' \ 45251609Sdim ' startup aborted' 46251609Sdim kill -QUIT $$ 47251609Sdim ;; 48251609Sdim esac 49251609Sdim ;; 50251609Sdim NetBSD) 51251609Sdim # Mount critical filesystems that are `local' 52251609Sdim # (as specified in $critical_filesystems_local) 53251609Sdim # This usually includes /var. 54251609Sdim # 55251609Sdim mount_critical_filesystems local 56251609Sdim 57251609Sdim # clean up left-over files. 58251609Sdim # this could include the cleanup of lock files and /var/run, etc. 59251609Sdim # 60251609Sdim rm -f /etc/nologin /var/spool/lock/LCK.* /var/spool/uucp/STST/* 61251609Sdim (cd /var/run && rm -rf -- *) 62251609Sdim ;; 63251609Sdim esac 64251609Sdim} 65251609Sdim 66251609Sdimload_rc_config $name 67251609Sdimrun_rc_command "$1" 68251609Sdim