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 (the "License"). 7 # You may not use this file except in compliance with the License. 8 # 9 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10 # or http://www.opensolaris.org/os/licensing. 11 # See the License for the specific language governing permissions 12 # and limitations under the License. 13 # 14 # When distributing Covered Code, include this CDDL HEADER in each 15 # file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16 # If applicable, add the following below this CDDL HEADER, with the 17 # fields enclosed by brackets "[]" replaced with your own identifying 18 # information: Portions Copyright [yyyy] [name of copyright owner] 19 # 20 # CDDL HEADER END 21 # 22 23 # 24 # Copyright 2007 Sun Microsystems, Inc. All rights reserved. 25 # Use is subject to license terms. 26 # 27 # ident "%Z%%M% %I% %E% SMI" 28 # 29 30 PATH="/usr/bin:/usr/sbin:${PATH}" 31 export PATH 32 33 FLD='[^ ]\{1,\}[ ]\{1,\}' 34 LN_DEVFS="/devices - /devices devfs - no -" 35 LN_CTFS="ctfs\t\t- /system/contract ctfs - no -" 36 LN_OBJFS="objfs\t\t- /system/object objfs - no -" 37 LN_SHAREFS="sharefs\t\t- /etc/dfs/sharetab sharefs - no -" 38 39 missing() 40 { 41 grep "$FLD$FLD$2" $1 > /dev/null 2>&1 42 if [ $? = 0 ]; then 43 return 1 44 else 45 return 0 46 fi 47 } 48 49 while read src dst; do 50 if [ ! -f $dst ]; then 51 cp $src $dst 52 else 53 if missing $dst /devices; then 54 echo "$LN_DEVFS" >> $dst 55 fi 56 if missing $dst /system/contract; then 57 echo "$LN_CTFS" >> $dst 58 fi 59 if missing $dst /system/object; then 60 echo "$LN_OBJFS" >> $dst 61 fi 62 if missing $dst /etc/dfs/sharetab; then 63 echo "$LN_SHAREFS" >> $dst 64 fi 65 fi 66 done 67 exit 0 68