diff --git a/usr.sbin/freebsd-update/freebsd-update.sh b/usr.sbin/freebsd-update/freebsd-update.sh --- a/usr.sbin/freebsd-update/freebsd-update.sh +++ b/usr.sbin/freebsd-update/freebsd-update.sh @@ -895,6 +895,12 @@ if [ "$BASEDIR" != "/" ]; then return 1 fi + # If ZFS is not available and we are operating on /, we know ZFS is not + # involved. Invoking bectl will load the ZFS module which we really + # shouldn't do spuriously. + if [ ! -c "/dev/zfs" ]; then + return 1 + fi # Create a boot environment if enabled if [ ${BOOTENV} = yes ]; then bectl check 2>/dev/null