Index: vmrun.sh =================================================================== --- vmrun.sh (revision 262341) +++ vmrun.sh (working copy) @@ -39,7 +39,7 @@ DEFAULT_ISOFILE="./release.iso" usage() { - echo "Usage: vmrun.sh [-hai][-g ][-m ][-d ][-e ][-I ][-t ] " + echo "Usage: vmrun.sh [-hai][-g ][-m ][-d ][-e ][-I ][-t ][-H ] " echo " -h: display this help message" echo " -a: force memory mapped local apic access" echo " -c: number of virtual cpus (default is ${DEFAULT_CPUS})" @@ -46,6 +46,7 @@ echo " -d: virtio diskdev file (default is ${DEFAULT_VIRTIO_DISK})" echo " -e: set FreeBSD loader environment variable" echo " -g: listen for connection from kgdb at " + echo " -H: host filesystem to export to the loader" echo " -i: force boot of the Installation CDROM image" echo " -I: Installation CDROM image location (default is ${DEFAULT_ISOFILE})" echo " -m: memory size (default is ${DEFAULT_MEMSIZE})" @@ -74,9 +75,9 @@ tapdev=${DEFAULT_TAPDEV} apic_opt="" gdbport=0 -env_opt="" +loader_opt="" -while getopts haic:e:g:I:m:d:t: c ; do +while getopts haic:e:g:H:I:m:d:t: c ; do case $c in h) usage @@ -88,10 +89,13 @@ virtio_diskdev=${OPTARG} ;; e) - env_opt="${env_opt} -e ${OPTARG}" + loader_opt="${loader_opt} -e ${OPTARG}" ;; g) gdbport=${OPTARG} ;; + H) + host_base=`realpath ${OPTARG}` + ;; i) force_install=1 ;; @@ -120,6 +124,9 @@ fi vmname="$1" +if [ -n "${host_base}" ]; then + loader_opt="${loader_opt} -h ${host_base}" +fi # Create the virtio diskdev file if needed if [ ! -f ${virtio_diskdev} ]; then @@ -168,7 +175,7 @@ installer_opt="" fi - ${LOADER} -m ${memsize} -d ${BOOTDISK} ${env_opt} ${vmname} + ${LOADER} -m ${memsize} -d ${BOOTDISK} ${loader_opt} ${vmname} if [ $? -ne 0 ]; then break fi