17c478bd9Sstevel@tonic-gate#!/sbin/sh 27c478bd9Sstevel@tonic-gate# 37c478bd9Sstevel@tonic-gate# CDDL HEADER START 47c478bd9Sstevel@tonic-gate# 57c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the 6*fba5460fSas158974# Common Development and Distribution License (the "License"). 7*fba5460fSas158974# You may not use this file except in compliance with the License. 87c478bd9Sstevel@tonic-gate# 97c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 107c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing. 117c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions 127c478bd9Sstevel@tonic-gate# and limitations under the License. 137c478bd9Sstevel@tonic-gate# 147c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each 157c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 167c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the 177c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying 187c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner] 197c478bd9Sstevel@tonic-gate# 207c478bd9Sstevel@tonic-gate# CDDL HEADER END 217c478bd9Sstevel@tonic-gate# 227c478bd9Sstevel@tonic-gate# 237c478bd9Sstevel@tonic-gate# ident "%Z%%M% %I% %E% SMI" 247c478bd9Sstevel@tonic-gate# 25*fba5460fSas158974# Copyright 2007 Sun Microsystems, Inc. All rights reserved. 26*fba5460fSas158974# Use is subject to license terms. 277c478bd9Sstevel@tonic-gate# 287c478bd9Sstevel@tonic-gate# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T 297c478bd9Sstevel@tonic-gate# All Rights Reserved 307c478bd9Sstevel@tonic-gate# 317c478bd9Sstevel@tonic-gate 327c478bd9Sstevel@tonic-gate# 337c478bd9Sstevel@tonic-gate# Produce a list of the file systems that are not already 347c478bd9Sstevel@tonic-gate# mounted. 357c478bd9Sstevel@tonic-gate# 367c478bd9Sstevel@tonic-gatefor fsckdev in $* ; do 377c478bd9Sstevel@tonic-gate /usr/sbin/fsck -m -F ufs $fsckdev >/dev/null 2>&1 38*fba5460fSas158974 case $? in 39*fba5460fSas158974 33) echo "$fsckdev already mounted" 40*fba5460fSas158974 ;; 41*fba5460fSas158974 42*fba5460fSas158974 0) echo "$fsckdev is clean" 43*fba5460fSas158974 ;; 44*fba5460fSas158974 45*fba5460fSas158974 *) ufs_fscklist="$ufs_fscklist $fsckdev" 46*fba5460fSas158974 ;; 47*fba5460fSas158974 esac 487c478bd9Sstevel@tonic-gatedone 497c478bd9Sstevel@tonic-gate 507c478bd9Sstevel@tonic-gate# 517c478bd9Sstevel@tonic-gate# Check the file systems in parallel 527c478bd9Sstevel@tonic-gate# 537c478bd9Sstevel@tonic-gate 547c478bd9Sstevel@tonic-gateif [ "$ufs_fscklist" ]; then 557c478bd9Sstevel@tonic-gate echo "checking ufs filesystems" 567c478bd9Sstevel@tonic-gate /usr/sbin/fsck -o p $ufs_fscklist 577c478bd9Sstevel@tonic-gate case $? in 587c478bd9Sstevel@tonic-gate 0|40|33) # file system OK 597c478bd9Sstevel@tonic-gate exit 0 607c478bd9Sstevel@tonic-gate ;; 617c478bd9Sstevel@tonic-gate 627c478bd9Sstevel@tonic-gate *) # couldn't fix the filesystems - return an error 637c478bd9Sstevel@tonic-gate exit 1 647c478bd9Sstevel@tonic-gate ;; 657c478bd9Sstevel@tonic-gate esac 667c478bd9Sstevel@tonic-gatefi 677c478bd9Sstevel@tonic-gate 687c478bd9Sstevel@tonic-gateexit 0 69