Skip to content

new_version_migration

Alonso Cárdenas edited this page Aug 10, 2026 · 8 revisions

Migration from bhyvemgr 1.15.0 to 2.0.0

Requirements

  • All virtual machines must be stopped
  • A bhyvemgrd installation from FreeBSD ports or packages
  • A bhyvemgr installation updated to v2.0.0
  • A bhyvemgr config files backup

Dnsmasq breaking change

If you are using Dnsmasq support, some changes must be applied to dnsmasq setting /usr/local/etc/dnsmasq.conf:

Remove the line:

conf-dir=/usr/local/etc/dnsmasq.d/bhyvemgr/,*.conf

Add the following lines:

dhcp-hostsdir=/usr/local/etc/dnsmasq.d/bhyvemgr-dhcp/
hostsdir=/usr/local/etc/dnsmasq.d/bhyvemgr-host/

Create the new configuration directories:

# install -d -m 775 /usr/local/etc/dnsmasq.d/bhyvemgr-dhcp
# chown root:bhyvemgrd /usr/local/etc/dnsmasq.d/bhyvemgr-dhcp
# install -d -m 775 /usr/local/etc/dnsmasq.d/bhyvemgr-host
# chown root:bhyvemgrd /usr/local/etc/dnsmasq.d/bhyvemgr-host

Copy virtual machines configuration files to new directories

# cp -p /usr/local/etc/dnsmasq/bhyvemgr/* /usr/local/etc/dnsmasq/bhyvemgr-dhcp/
# cp -p /usr/local/etc/dnsmasq/bhyvemgr/* /usr/local/etc/dnsmasq/bhyvemgr-host/

Apply new changes to configuration files

# cd /usr/local/etc/dnsmasq/bhyvemgr-dhcp/
# chmod 644 *.conf
# chown :bhyvemgrd *.conf
# find * -type f -name "*.conf" -exec sed -i "" -e '/^host-record=/d' -e 's|dhcp-host=||g' "{}" \;
# cd /usr/local/etc/dnsmasq/bhyvemgr-host
# chmod 644 *.conf
# chown :bhyvemgrd *.conf
# find * -type f -name "*.conf" -exec sed -i "" -e '/^dhcp-host=/d' -e 's|host-record=||g' "{}" \;
# find * -type f -name "*.conf" -empty -delete -o -type f -name "*.conf" -exec sed -i "" 's/^\([^,]*\),\([^,]*\)$/\2 \1/' {} \;

Virtual Machine directory changes

We need apply new changes to virtual machines directories and files. In this example, VM directory was defined to /zroot/bhyvemgr

# cd /zroot/bhyvemgr
# chown -R :bhyvemgrd *
# find * -type f -exec chmod 640 "{}" \;
# find * -type d -exec chmod 750 "{}" \;

Configuration changes

The new bhyvemgr configuration file has been renamed to ~/.config/bhyvemgr/gui.conf.

When you run the new version of bhyvemgr for the first time, you will need to generate a new configuration file. Some settings from the previous version have been removed and are no longer supported.

After generating the new gui.conf, save it and update it with any settings you still need from your previous ~/.config/bhyvemgr/config.conf file.

The new version of bhyvemgr will also generate a new common.conf file in /usr/local/etc/bhyvemgrd. This file contains settings shared by both bhyvemgr and bhyvemgrd.

The bhyvemgrd configuration file is stored at: /usr/local/etc/bhyvrmgrd/daemon.conf

Notes

Finishing all these tasks, you can continue reading bhyvemgrd and bhyvemgr README files.

Clone this wiki locally