Skip to content

FreeBSD 14

Stable

The BSD operating system, on a ZFS root with cloud-init.

14.5 · qcow2 · x86_64 · user freebsd

Note: 14.5 is the last FreeBSD 14 release; the 14 branch is supported until 2028-11-30. Prefer FreeBSD 15 for new deployments.

Download

Quick start

OpenStack

OpenStack Glance
curl -fLO https://images.openimages.cloud/freebsd-14/14.5/freebsd-14.5-x86_64.qcow2
echo "3a8fc2759beca4aaa5e6083ad115f6cdb6bfeb7c9822848b8be4e1dd188d96dd  freebsd-14.5-x86_64.qcow2" | sha256sum -c -

openstack image create \
  --disk-format qcow2 --container-format bare \
  --file freebsd-14.5-x86_64.qcow2 \
  --min-disk 6 \
  --property os_distro=freebsd \
  --property os_version=14.5 \
  --property os_admin_user=freebsd \
  --property architecture=x86_64 \
  --property os_type=linux \
  --property hw_qemu_guest_agent=yes \
  --property hw_disk_bus=scsi \
  --property hw_scsi_model=virtio-scsi \
  --property hw_vif_multiqueue_enabled=true \
  --property os_require_quiesce=no \
  --property oic_id=freebsd-14 \
  --property oic_version=14.5 \
  --property oic_sha256=3a8fc2759beca4aaa5e6083ad115f6cdb6bfeb7c9822848b8be4e1dd188d96dd \
  freebsd-14-14.5

Proxmox VE

Creates a cloud-init template (VM 9000) on local-lvm. The local storage needs the Import content type (default on new Proxmox VE 9.1 installs). Adjust the storages, bridge and SSH key path to your setup.

Proxmox VE 9
# Download into the "import" content of a file storage; PVE checks the sha256.
pvesh create /nodes/$(hostname)/storage/local/download-url \
  --content import --filename freebsd-14.5-x86_64.qcow2 \
  --url https://images.openimages.cloud/freebsd-14/14.5/freebsd-14.5-x86_64.qcow2 \
  --checksum 3a8fc2759beca4aaa5e6083ad115f6cdb6bfeb7c9822848b8be4e1dd188d96dd --checksum-algorithm sha256

qm create 9000 --name freebsd-14 --memory 2048 --cores 2 \
  --net0 virtio,bridge=vmbr0 --scsihw virtio-scsi-single \
  --serial0 socket --vga serial0 --agent enabled=1
qm set 9000 --scsi0 local-lvm:0,import-from=local:import/freebsd-14.5-x86_64.qcow2,discard=on
qm set 9000 --ide2 local-lvm:cloudinit --boot order=scsi0 \
  --ciuser freebsd --sshkeys ~/.ssh/id_ed25519.pub --ipconfig0 ip=dhcp
qm template 9000

In the web UI: Datacenter > Storage, edit local and add Import to its content; then on that storage, Import > Download from URL with the URL above and the SHA-256 checksum, and pick the downloaded file as the import source when adding the VM disk. On Proxmox VE 8, download the file with wget and use import-from=/root/freebsd-14.5-x86_64.qcow2 instead.

Verify before booting

cosign 2.x / 3.x
curl -fLO https://images.openimages.cloud/freebsd-14/14.5/freebsd-14.5-x86_64.qcow2
curl -fLO https://images.openimages.cloud/freebsd-14/14.5/freebsd-14.5-x86_64.qcow2.bundle

cosign verify-blob freebsd-14.5-x86_64.qcow2 \
  --bundle freebsd-14.5-x86_64.qcow2.bundle --new-bundle-format \
  --certificate-identity-regexp '^https://github.com/open-img-cloud/\.github/\.github/workflows/build-(libguestfs|dib|nix-flake|freebsd)-image\.yml@' \
  --certificate-oidc-issuer https://token.actions.githubusercontent.com

Expect Verified OK. Details in the verification guide.

Keep images up to date

Automation should not scrape this page. The catalog index lists the latest version of every image with versioned URLs, SHA-256 and SHA-512 digests, sizes, firmware and the cosign identity; the version history of this image lists every published release. OpenStack operators using openstack-image-manager can point it at the ready-made definitions:

osism openstack-image-manager
curl -fsSo oic-images.yml https://images.openimages.cloud/osism/images.yml
openstack-image-manager --cloud admin --images oic-images.yml --latest

About

Cloud-init-ready, signed FreeBSD 14 qcow2 image built from the official release distribution sets, verified against the release MANIFEST, on a ZFS root that grows to the flavor disk. dhcpcd configures IPv4 and the IPv6 address of the Neutron port.

  • openstack
  • proxmox
  • cloud-init
  • signed