#!/bin/sh
##
-# Copyright 2002 Apple Computer, Inc.
+# Copyright 2002-2009 Apple Inc.
#
# This script configures NetBoot
##
Failed()
{
echo rc.netboot: $1
+ echo rc.netboot: $1 > /dev/console
+ sleep 5
exit 1
}
local_mount()
{
- volinfo=`autodiskmount -F 2>/dev/null`
- if [ $? -ne 0 ]; then
- echo "autodiskmount -F found no local drives"
- return 1
- fi
+ tries=0
+ limit=11
+ while [ $tries -lt $limit ]; do
+ tries=$(( tries + 1 ))
+ volinfo=`autodiskmount -F 2>/dev/null`
+ if [ $? -ne 0 ]; then
+ if [ $tries -lt $limit ]; then
+ echo "Waiting for local drives..."
+ echo "Waiting for local drives (retry ${tries}/$(( limit - 1 )))..." > /dev/console
+ sleep 5
+ else
+ echo "autodiskmount -F found no local drives"
+ return 1
+ fi
+ else
+ tries=$limit
+ fi
+ done
set ${volinfo}
devname=$1
fstype=$2
return 1
fi
case "${mount_from}" in
- afp:*) fstype=afp;;
+ afp:*)
+ fstype=afp
+ kextutil -v 0 /System/Library/Filesystems/AppleShare/asp_tcp.kext
+ kextutil -v 0 /System/Library/Filesystems/AppleShare/afpfs.kext
+ ;;
nfs:*) fstype=nfs;;
*) echo "unknown network filesystem mount from ${mount_from}"
return 1
;;
esac
- mount -t "${fstype}" "${mount_from}" "${NETBOOT_MOUNT}"
+ mount -t "${fstype}" -o nobrowse "${mount_from}" "${NETBOOT_MOUNT}"
if [ $? -ne 0 ]; then
- echo "mount -t ${fstype} ${mount_from} ${NETBOOT_MOUNT} failed"
+ echo "mount -t ${fstype} -o nobrowse ${mount_from} ${NETBOOT_MOUNT} failed"
return 1
fi
common_start "${NETBOOT_MOUNT}" "${shadow_path}"