Prerequisites
Before you start, your Ubuntu 24.04 host should already have:
- KVM (qemu-kvm)
- libvirt (libvirtd)
- Cockpit + cockpit-machines
- (Optional) Bridge networking (br0) if you want the VM to get a LAN IP
If you haven’t set these up yet, follow this post first:
After that, come back here to install FreeBSD 14.3 as a VM.
What you’ll do
- Download the FreeBSD 14.3 ISO and place it in libvirt’s image directory
- Create a FreeBSD VM in Cockpit using that ISO
- Install FreeBSD 14.3 with recommended VM defaults (VirtIO disk + VirtIO NIC)
- Verify the installed version is FreeBSD 14.3
- Download and prepare the FreeBSD 14.3 ISO (on the host)
Download FreeBSD-14.3-RELEASE-amd64-disc1.iso from an official FreeBSD mirror, then:
sudo mkdir -p /var/lib/libvirt/images
sudo cp ~/Downloads/FreeBSD-14.3-RELEASE-amd64-disc1.iso /var/lib/libvirt/images/
sudo chmod 644 /var/lib/libvirt/images/FreeBSD-14.3-RELEASE-amd64-disc1.iso
- Create the VM in Cockpit (cockpit-machines)
Open Cockpit:
https://<your-ubuntu-host-ip>:9090
Go to:
- Virtual Machines → Create VM
Recommended settings:
VM basics
- Name:
freebsd-client - Installation type: Local install media (ISO)
- Installation source:
/var/lib/libvirt/images/FreeBSD-14.3-RELEASE-amd64-disc1.iso
Operating system selection (14.2 vs 14.3)
Cockpit may not list FreeBSD 14.3 yet. That’s fine.
- Choose FreeBSD 14.2 (closest option)
This selection only affects defaults. The ISO still installs FreeBSD 14.3.
CPU / Memory / Disk
- vCPU: 2–4
- Memory: 4–8 GiB (8 GiB is comfortable for ZFS)
- Disk: 50–100 GiB (qcow2)
Networking
- If you created
br0in the prerequisite post: choose Bridge br0 (LAN IP via DHCP) - Otherwise: keep default NAT network
Click Create and run. Open the console.
- Install FreeBSD 14.3
Install
- Install
Keymap
- Continue with default keymap
Hostname
- Example:
freebsd-client
Distribution Select
- Keep defaults (base + kernel)
- Optional:
src,portsonly if you need them
Partitioning
Pick one:
Option A (common): Auto (ZFS)
- Virtual device type: stripe
- Disk: Select the disk shown by the installer (commonly
vtbd0, sometimesda0/ada0depending on the controller).
Option B: Auto (UFS)
- Simpler, lighter
Root password
- Set a strong root password
Network (VirtIO)
- Interface:
vtnet0 - IPv4: Yes
- DHCP: Yes
- IPv6: No (unless your LAN uses IPv6)
Time zone
Example for Taiwan:
- Asia → Taiwan
- Confirm abbreviation “CST” → Yes
- Time/date: Skip
Services
sshddumpdev
Hardening
- Leave defaults
Add user
- Choose No
Finish and reboot.
- Verify the installed version
freebsd-version
uname -a
Expected: FreeBSD 14.3-RELEASE
Did this guide save you time?
Support this site