All Products
Search
Document Center

:FreeBSD operating system compatibility

Last Updated:Jun 20, 2026

This article describes the compatibility of different FreeBSD versions on Alibaba Cloud and explains how to perform a major version upgrade.

Support in the Alibaba Cloud console

Operating system

Image id

Password creation

Key pair creation

Console password change

Console key pair change

FreeBSD 15.0

freebsd_15_0_x64_30G_alibase_20260320.qcow2

No

Yes

Yes

Yes

FreeBSD 14.4

freebsd_14_4_x64_30G_alibase_20260320.qcow2

No

Yes

Yes

Yes

FreeBSD 14.3

freebsd_14_3_x64_30G_alibase_20260320.qcow2

No

Yes

Yes

Yes

FreeBSD 14.1

freebsd_14_1_x64_30G_alibase_20241209.qcow2

No

Yes

No

No

FreeBSD 13.5

freebsd_13_5_x64_30G_alibase_20260320.qcow2

No

Yes

Yes

Yes

FreeBSD 13.4

freebsd_13_4_x64_30G_alibase_20241209.qcow2

No

Yes

No

No

FreeBSD 13.0

freebsd_13_0_x86_30G_alibase_20220324.vhd

No

Yes

No

No

FreeBSD 12.3

freebsd_12_3_x64_30G_alibase_20220331.vhd

No

Yes

No

No

FreeBSD 12.1

freebsd_12_1_x64_30G_alibase_20201022.vhd

No

Yes

No

No

FreeBSD 11.4

freebsd_11_4_x64_30G_alibase_20210319.vhd

Yes

Yes

Yes

Yes

FreeBSD 11.3

freebsd_11_3_x64_30G_alibase_20200803.vhd

Yes

Yes

Yes

Yes

FreeBSD 11.2

freebsd_11_02_64_30G_alibase_20190806.vhd

Yes

Yes

Yes

Yes

The following examples illustrate the support differences for FreeBSD in the Alibaba Cloud console:

FreeBSD 11.4

  • When you create an ECS instance, you can set a password or a key pair as the login credential.

    The login credential options are Key Pair, Custom Password, and Set After Creation. If you select Key Pair, the default username is root. From the Key Pair drop-down list, select an existing key pair or click Create Key Pair.

  • After the ECS instance is created, you can change the password.

    On the instance details page, click Reset Instance Password in the upper-right corner.

FreeBSD 13.0

  • When you create an ECS instance, you can only use a key pair as the login credential. You cannot set a password.

    The default username is root.

  • After the ECS instance is created, the key pair cannot be changed.

    For this version, changing the key pair or resetting the password from the console is not supported.

FreeBSD 11/12 on Alibaba Cloud

FreeBSD 11 and 12 require kernel patches to run on fifth-generation or later instance families. Without these patches, the operating system cannot start. The public images for FreeBSD on Alibaba Cloud include these patches and support fifth-generation and later instances. You can query the instance family generation by calling the DescribeInstanceTypeFamilies API operation and checking the Generation parameter.

The operating system may fail to start in the following scenarios. To avoid or resolve this issue, you can patch and compile the FreeBSD kernel source code.

  • If you create an ECS instance from a non-Alibaba Cloud FreeBSD image or a related custom image, the instance may fail to start if it belongs to a fifth-generation or later instance family.

  • If you create an ECS instance from a FreeBSD public image and then use a tool such as freebsd-update to apply system updates, the instance may fail to start because the required kernel patches may be overwritten.

    Note

    You can use freebsd-update to upgrade the system to a FreeBSD 13 version. For details, see Upgrade FreeBSD across major versions.

This example shows how to patch and compile the kernel by using FreeBSD 12.4 source code.

  1. Download and extract the FreeBSD kernel source code.

    wget https://mirrors.aliyun.com/freebsd/releases/amd64/12.4-RELEASE/src.txz -O /src.txz
    cd /
    tar -zxvf /src.txz
  2. Download the patch.

    In this example, we apply the 0001-virtio.patch file to the virtio driver.

    cd /usr/src/sys/dev/virtio/
    wget https://ecs-image-tools.oss-cn-hangzhou.aliyuncs.com/0001-virtio.patch
    patch -p4 < 0001-virtio.patch
  3. Copy the kernel configuration file, then compile and install the kernel.

    The make -j<N> command sets the number of parallel compilation jobs. Set N based on the configuration of your compilation environment. For example, in a 1-vCPU environment, we recommend setting -j2. We recommend setting N to twice the number of vCPUs (a 1:2 ratio).

    cd /usr/src/
    cp ./sys/amd64/conf/GENERIC .
    make -j2 buildworld KERNCONF=GENERIC
    make -j2 buildkernel KERNCONF=GENERIC
    make -j2 installkernel KERNCONF=GENERIC
  4. After compilation is complete, delete the source code.

    rm -rf /usr/src/*
    rm -rf /usr/src/.*

FreeBSD 13 on Alibaba Cloud

FreeBSD 13 and later versions have already incorporated the kernel patches required to run on fifth-generation and later Alibaba Cloud instance families. You do not need to install additional patches. The relevant patches are:

In addition, you must add the kern.maxphys=65536 kernel parameter for the system to run correctly. To do this, run the following command:

echo "kern.maxphys=65536" >>/boot/loader.conf

The Alibaba Cloud public image for FreeBSD 13 uses kernel version 13.0-Release-p8, which includes both patches and the required kernel parameter. You can use it directly.

Upgrade FreeBSD across major versions

This example shows how to upgrade a FreeBSD system from version 12.3 to 13.1.

  1. Run the upgrade command.

    freebsd-update upgrade -r 13.1-RELEASE

After the command completes, the system prompts you to run the /usr/sbin/freebsd-update install command to finish the installation.

  1. As prompted, run the installation command.

    /usr/sbin/freebsd-update install

The command output is as follows:

root@freebsd123:~ # /usr/sbin/freebsd-update install
src component not installed, skipped
Installing updates...
Kernel updates have been installed.  Please reboot and run
"/usr/sbin/freebsd-update install" again to finish installing updates.
root@freebsd123:~ #
  1. Run the following command to configure loader.conf to ensure the system runs correctly after the upgrade.

    echo "kern.maxphys=65536" >>/boot/loader.conf
  2. Run the following command to restart the instance.

    Warning

    Restarting the instance stops its services, which can cause business interruptions. We recommend performing this operation during off-peak hours.

    reboot
  3. Run the following command to check the version.

    uname -r

The following output indicates that the FreeBSD system has been successfully upgraded to version 13.1.

root@freebsd123:~ # uname -r
13.1-RELEASE-p6

Related documents

For more information about FreeBSD, see the official FreeBSD documentation.