svn commit: r301787 - head/usr.sbin/bsdinstall/scripts
Allan Jude
allanjude at FreeBSD.org
Fri Jun 10 14:32:00 UTC 2016
Author: allanjude
Date: Fri Jun 10 14:31:59 2016
New Revision: 301787
URL: https://svnweb.freebsd.org/changeset/base/301787
Log:
Fix bsdinstall for root-on-zfs with MBR partitioning
Fix an error where vfs.root.mountfrom was not always set as required
when creating a bootpool. After the recent geliboot changes, it was only
set if the main pool was encrypted.
Also resolve an error where the bootpool was unmounted twice causing
bsdinstall to stop with an error message about the failed command.
Approved by: re (gjb)
Sponsored by: BSDCan Hacker Lounge
Modified:
head/usr.sbin/bsdinstall/scripts/zfsboot
Modified: head/usr.sbin/bsdinstall/scripts/zfsboot
==============================================================================
--- head/usr.sbin/bsdinstall/scripts/zfsboot Fri Jun 10 14:31:03 2016 (r301786)
+++ head/usr.sbin/bsdinstall/scripts/zfsboot Fri Jun 10 14:31:59 2016 (r301787)
@@ -1194,11 +1194,6 @@ zfs_create_boot()
f_eval_catch $funcname chmod "$CHMOD_MODE" \
go-wrx "$bootpool/$zroot_key" ||
return $FAILURE
- else
- # Clean up
- f_eval_catch $funcname zfs "$ZFS_UNMOUNT" \
- "$bootpool_name" || return $FAILURE
- f_eval_catch -d $funcname umount "$UMOUNT" /mnt # tmpfs
fi
fi
@@ -1409,6 +1404,11 @@ zfs_create_boot()
"cachefile=\"$BSDINSTALL_CHROOT/boot/zfs/zpool.cache\"" \
"$zroot_name" || return $FAILURE
+ if [ "$ZFSBOOT_BOOT_POOL" ]; then
+ f_eval_catch $funcname printf "$PRINTF_CONF" \
+ vfs.root.mountfrom "\"zfs:$zroot_name/$zroot_bootfs\"" \
+ $BSDINSTALL_TMPBOOT/loader.conf.root || return $FAILURE
+ fi
#
# Set canmount=noauto so that the default Boot Environment (BE) does not
# get mounted if a different BE is selected from the beastie menu
@@ -1486,10 +1486,6 @@ zfs_create_boot()
$BSDINSTALL_TMPBOOT/loader.conf.zfs ||
return $FAILURE
done
- f_eval_catch $funcname printf "$PRINTF_CONF" vfs.root.mountfrom \
- "\"zfs:$zroot_name/$zroot_bootfs\"" \
- $BSDINSTALL_TMPBOOT/loader.conf.root || return $FAILURE
-
return $SUCCESS
}
More information about the svn-src-all
mailing list