1 #!/bin/sh 2 # 3 # CDDL HEADER START 4 # 5 # The contents of this file are subject to the terms of the 6 # Common Development and Distribution License, Version 1.0 only 7 # (the "License"). You may not use this file except in compliance 8 # with the License. 9 # 10 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 11 # or http://www.opensolaris.org/os/licensing. 12 # See the License for the specific language governing permissions 13 # and limitations under the License. 14 # 15 # When distributing Covered Code, include this CDDL HEADER in each 16 # file and include the License file at usr/src/OPENSOLARIS.LICENSE. 17 # If applicable, add the following below this CDDL HEADER, with the 18 # fields enclosed by brackets "[]" replaced with your own identifying 19 # information: Portions Copyright [yyyy] [name of copyright owner] 20 # 21 # CDDL HEADER END 22 # 23 # Copyright (c) 1993 by Sun Microsystems, Inc. 24 25 #ident "%Z%%M% %I% %E% SMI" 26 # 27 # Check shared NFS filesystems for .nfs* files that 28 # are more than a week old. 29 # 30 # These files are created by NFS clients when an open file 31 # is removed. To preserve some semblance of Unix semantics 32 # the client renames the file to a unique name so that the 33 # file appears to have been removed from the directory, but 34 # is still usable by the process that has the file open. 35 36 if [ ! -s /etc/dfs/sharetab ]; then exit ; fi 37 38 # Get all NFS filesystems exported with read-write permission. 39 40 DIRS=`/usr/bin/nawk '($3 != "nfs") { next } 41 ($4 ~ /^rw$|^rw,|^rw=|,rw,|,rw=|,rw$/) { print $1; next } 42 ($4 !~ /^ro$|^ro,|^ro=|,ro,|,ro=|,ro$/) { print $1 }' /etc/dfs/sharetab` 43 44 for dir in $DIRS 45 do 46 find $dir -type f -name .nfs\* -mtime +7 -mount -exec rm -f {} \; 47 done