| Current File : //boot/solaris/bin/create_diskmap |
#!/bin/ksh
# Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
export PATH=/usr/bin:/usr/sbin
GRUBDISKMAP=/system/volatile/solaris_grubdisk.map
rm -f "$GRUBDISKMAP"
touch "$GRUBDISKMAP"
virtenv=$(virtinfo -c current list -Ho name 2> /dev/null)
if [[ $virtenv == "kernel-zone" ]]; then
set -- $(/boot/solaris/bin/kzbootdisks)
else
set -- $(biosdev 2> /dev/null)
fi
while (( $# >= 2 )); do
diskno=$1
diskpath=$2
shift 2
devname=$(ls -l /dev/rdsk/*p0 | grep "$diskpath" | nawk '{ print $9 }')
ctdname=$(echo $devname | sed "s#/dev/rdsk/##" | sed "s#p0##")
grubdisk=$(echo $diskno | sed "s/0x8//")
echo "$grubdisk $ctdname $diskpath" >> "$GRUBDISKMAP"
done