Virtual Machines and Containers in TrueNAS 25.04 and Later
TrueNAS 25.04 replaces the previous libvirt implementation (TrueNAS 24.10 and earlier) with Incus for virtual machine (VM) deployment.
It also introduces support for Linux system containers (LXC), enabling lightweight isolation similar to jails in TrueNAS CORE.
With this change, the Instances (formerly Virtualization) screens in the TrueNAS UI are fully redesigned.
We are actively updating Tutorials and UI Reference articles to reflect these changes.
Please use the Docs Hub Feedback button (located to the right of any article) to report documentation issues or request improvements to the Instances documentation.
After you download the .iso file, you can start installing TrueNAS!
This article describes verifying the .iso file, then installing TrueNAS using that file, and selecting the type of installation as either on physical hardware or a virtual machine (VM).
TrueNAS Enterprise
TrueNAS Enterprise customers should receive their systems already installed and ready for UI configuration. If any issues require you to install or re-install TrueNAS, contact TrueNAS Enterprise Support for assistance.
Advanced settings have reasonable defaults in place. A warning message displays for some settings advising of the dangers of making changes.
Changing advanced settings can be dangerous when done incorrectly. Use caution before saving changes.
There are several configuration recommendations and troubleshooting tips when using TrueNAS with a VMware hypervisor.
iSCSI IQN is an acronym that stands for “iSCSI Qualified Name”. It is comprised of the following naming schema with a preamble, node name and unique identifier:
VMware requires using an IQN in their software iSCSI implementation.
A VMware datastore backed by iSCSI-based storage will consist of at least three distinct pieces: the storage host, the switching infrastructure, and the VMware host itself. In order to maximize service availability, each of these elements needs to be able to tolerate some level of failure without significantly disrupting iSCSI traffic.
Use this procedure to create ZFS snapshots when using TrueNAS as a VMWare datastore.
You must have a paid edition of VMWare ESXi to use the TrueNAS VMWare Snapshots feature.
ESXi free has a locked (read-only) API that prevents using TrueNAS VMWare Snapshots.
This tutorial uses ESXi version 8.
When creating a ZFS snapshot of the connected dataset, VMWare automatically takes a snapshot of any running virtual machines on the associated datastore.
VMware snapshots can integrate VMware Tools, making it possible to quiesce VM snapshots, sync filesystems, take shadow copy snapshots, and more.
Quiescing snapshots is the process of bringing VM data into a consistent state, suitable for creating automatic backups.
Quiesced snapshots can be file-system consistent, where all pending data or file-system changes complete, or application consistent, where applications complete all tasks and flush buffers, prior to creating the snapshot.See Manage Snapshots from VMWare for more information.
Use the VMware Snapshot Integration option on the Data Protection > Periodic Snapshot Tasks widget to create snapshots when you are using TrueNAS as a VMWare datastore.
See Creating VMWare Snapshots for a detailed tutorial.
VMware Snapshot Integration opens the VMWare Snapshots screen.
Enter the IP address or host name of the VMWare host. When clustering, enter the vCenter server for the cluster.
Username
Enter the user on the VMWare host with permission to snapshot virtual machines.
Password
Enter the password associated with the user entered in Username.
Datastore
Select a VMFS datastore to synchronize with the host from the dropdown list of options. Click Fetch DataStores to populate this list with options from the VMWare host. You must click Fetch Datastores before you click in this field or the creation process fails. Selecting a datastore also selects any mapped datasets.
ZFS Filesystem
Select a TrueNAS ZFS dataset from the dropdown list of options. This field does not populate until you click Fetch Datastores. You must click Fetch Datastores before clicking in this field or the creation process fails.
Click Fetch DataStores to connect TrueNAS to the VMWare host.
This synchronizes TrueNAS with the VMWare host and populates the ZFS Filesystem and Datastore dropdown lists with the information from TrueNAS and the VMWare host response.
Virtual Machines and Containers in TrueNAS 25.04 and Later
TrueNAS 25.04 replaces the previous libvirt implementation (TrueNAS 24.10 and earlier) with Incus for virtual machine (VM) deployment.
It also introduces support for Linux system containers (LXC), enabling lightweight isolation similar to jails in TrueNAS CORE.
With this change, the Instances (formerly Virtualization) screens in the TrueNAS UI are fully redesigned.
We are actively updating Tutorials and UI Reference articles to reflect these changes.
Please use the Docs Hub Feedback button (located to the right of any article) to report documentation issues or request improvements to the Instances documentation.
Systems with more than one graphics processing unit (GPU) installed can isolate additional GPU device(s) from the host operating system (OS) and allocate them for use by a virtual machine (VM).
Isolated GPU devices are unavailable to the OS and for allocation to applications.
Advanced settings have reasonable defaults in place. A warning message displays for some settings advising of the dangers of making changes.
Changing advanced settings can be dangerous when done incorrectly. Use caution before saving changes.
Configuring TrueNAS to work with virtualized features, such as virtual machines (VMs) and applications, is part of the setup process that, when optimized, takes advantage of the network storage capabilities that TrueNAS offers.
Before You Begin
This article assumes you have the latest release version of TrueNAS installed on your system.
The following steps are a list of configuration prerequisites you have completed and are familiar with before beginning VM and application installations.
Virtual Machines and Containers in TrueNAS 25.04 and Later
TrueNAS 25.04 replaces the previous libvirt implementation (TrueNAS 24.10 and earlier) with Incus for virtual machine (VM) deployment.
It also introduces support for Linux system containers (LXC), enabling lightweight isolation similar to jails in TrueNAS CORE.
With this change, the Instances (formerly Virtualization) screens in the TrueNAS UI are fully redesigned.
We are actively updating Tutorials and UI Reference articles to reflect these changes.
Please use the Docs Hub Feedback button (located to the right of any article) to report documentation issues or request improvements to the Instances documentation.