I tried using freebsd-update(8) at once to update both my system (on /) and my basejail. It did not end well. # freebsd-update fetch # freebsd-update -b /usr/jails/basejails/12.1_amd64 fetch # at the same time This will cause lots of weird errors (but it didn't actually break anything, which is a relief): * Checksum mismatch * Missing files (patchlist, files.wanted, filelist) * Patch count errors (was that 21 patches? or 278?) * etc. Expected behavior: * Either fail "another instance of freebsd-update(8) is running in workdir: [...] Remove the lockfile (/path) if you're sure about it." * Or gracefully handle multiple concurrent freebsd-update(8) by using a specific subdirectory in workdir (e.g. /var/db/freebsd-update/Lw== and L3Vzci9qYWlscy9iYXNlamFpbHMvMTIuMV9hbWQ2NA==, respectively - just a base64 encode of the basedir) https://github.com/freebsd/freebsd/blob/6b0fd688d5fee8dfd4e0a28ae52741be85dc80ea/usr.sbin/freebsd-update/freebsd-update.sh#L137-L143 https://github.com/freebsd/freebsd/blob/6b0fd688d5fee8dfd4e0a28ae52741be85dc80ea/usr.sbin/freebsd-update/freebsd-update.sh#L1139-L1142