fsck_root revision 1.3
11.1Sjoerg#!/bin/sh 21.1Sjoerg# 31.3Schristos# $NetBSD: fsck_root,v 1.3 2009/07/10 20:02:21 christos Exp $ 41.1Sjoerg# 51.1Sjoerg 61.1Sjoerg# PROVIDE: fsck_root 71.1Sjoerg 81.1Sjoerg$_rc_subr_loaded . /etc/rc.subr 91.1Sjoerg 101.1Sjoergname="fsck_root" 111.1Sjoergstart_cmd="fsck_root_start" 121.1Sjoergstop_cmd=":" 131.2Sapbfstab_file=/etc/fstab 141.1Sjoerg 151.1Sjoergfsck_root_start() 161.1Sjoerg{ 171.1Sjoerg if [ -e /fastboot ]; then 181.1Sjoerg echo "Fast boot: skipping disk checks." 191.1Sjoerg return 201.1Sjoerg fi 211.1Sjoerg trap : 2 # Ignore SIGINT, SIGQUIT, so we 221.1Sjoerg trap : 3 # enter single-user mode on failure. 231.1Sjoerg 241.2Sapb # Do nothing if root file system has fs_passno=0 in /etc/fstab. 251.2Sapb while read fs_spec fs_file fs_vfstype fs_mntops fs_freq fs_passno 261.2Sapb do 271.2Sapb case "${fs_spec}:${fs_file}:${fs_passno}" in 281.2Sapb \#*|'':*) 291.2Sapb continue # skip comment or blank line 301.2Sapb ;; 311.2Sapb *:/:0) 321.2Sapb echo "Not checking /: fs_passno = 0 in ${fstab_file}" 331.2Sapb return 341.2Sapb ;; 351.3Schristos *:/:*) case "${fs_spec}" in 361.3Schristos *:*) 371.3Schristos echo "Not checking /: nfs mounted" 381.3Schristos return 391.3Schristos ;; 401.3Schristos esac 411.2Sapb ;; 421.2Sapb esac 431.2Sapb done <"${fstab_file}" 441.2Sapb 451.1Sjoerg echo "Starting root file system check:" 461.1Sjoerg fsck $fsck_flags / 471.3Schristos handle_fsck_error "$?" 481.1Sjoerg} 491.1Sjoerg 501.1Sjoergload_rc_config $name 511.1Sjoergrun_rc_command "$1" 52