VMs
The VMs application is a virtual machine hypervisor built by TerraMaster based on the KVM kernel. Through an intuitive and easy-to-use centralized management interface, it integrates various virtualization solutions. It enables rapid deployment of virtual machines, flexible allocation of computing resources, and provides enterprise-grade data protection features, offering solid guarantees for business continuity.
Note: VMs and VirtualBox conflict and cannot run simultaneously. An existing installation of VirtualBox will prevent VMs from being enabled.
Requirements and Limitations
Supported TOS Versions: TOS 7.0 (x86)
Hardware and File System:
- Memory: 4GB or more is recommended. Running multiple virtual machines requires more memory.
- Storage Space: Only storage spaces under the Btrfs file system are supported as storage locations for virtual machines.
Overview
A centralized view displays the overall operational status of VMs, including overview information on virtual machines, storage spaces, and network resources, helping you quickly grasp the health status of the virtualization platform.
Section Description
- Virtualization Environment Status: The top card visually reflects the operational status of the entire VMs virtualization environment using graphical language, alerting you when errors occur on the host, virtual machines, or storage spaces.
The following statuses may appear in this field:
- Normal: The overall status is good and functioning normally.
- Warning: The status of a virtual machine or storage space is abnormal, but services can still operate normally. It is recommended to check the abnormal resources and troubleshoot.
- Error: The virtual machine or storage space cannot function properly. Please check the status of the abnormal resource and perform maintenance immediately to resolve the issue.
- Virtual Machine Monitoring: Real-time display of the CPU usage and memory usage of each running virtual machine.
- Resource Statistics: Displays the total capacity, used capacity, and usage rate of the storage space.
Virtual Machines
Through the "Virtual Machines" module, you can perform complete lifecycle management of virtual machines from creation to deletion.
Virtual Machine List
Displays all created virtual machines (including running and powered-off states) in a list. Click the drop-down button on the right of each virtual machine to expand and view its detailed configuration and performance data.
Data includes:
- General Information: Status, video card, storage, number of CPU cores, memory capacity, firmware (Legacy BIOS/UEFI), CPU compatibility mode, keyboard layout, etc.
- Performance Monitoring: Host CPU usage, host memory usage, total hard disk throughput, total hard disk IOPS, total hard disk latency, total sent/received network packets.
- Other Information: Number of snapshots, auto-start, USB devices, PCI devices, guest agent (Guest Agent) status, IP address, description.
Create Virtual Machine
Follow the wizard steps to configure the parameters of the desired virtual machine.
- Select Operating System: Select the type of operating system to install, such as Microsoft Windows, Linux, or other KVM-compatible systems.

- Select Storage Space: Select a Btrfs storage space that has been added to VMs to store all data of the virtual machine.
- Note: When the selected storage space runs out, the virtual machine will be shut down.

-
General Information:
- Name: Specify a unique name for the virtual machine.
- CPU: Define the number of CPU cores for the virtual machine.
Note- CPU Advanced Options:
- Enable CPU Compatibility Mode: Allows live migration between two hosts with different CPU models.
- Enable Hyper-V Enlightenments: Can improve the performance of Windows virtual machines.
- QoS Settings
- Reserve CPU threads: Can reserve CPU threads for virtual machines that require higher performance. Reserved CPU threads cannot be used for other services or virtual machines.
- Machine Type: Select the machine type of the virtual machine.
- PC: Provides higher compatibility with older operating systems.
- Q35: A newer virtual platform that provides PCI-E but does not support IDE virtual hard disks.
- Virtual Machine Priority: Set the relative weight of the virtual machine when resource contention occurs (Low, Below Normal, Standard, Above Normal, High).
- Memory: Define the amount of memory allocated to the virtual machine. Upon startup, this portion of memory will be reserved.
- Video Card: Select the video card type (Cirrus, VGA, vmvga).
- Cirrus: Cirrus Logic GD5446 graphics card. All Windows versions since Windows 95 can recognize and use it.
- VGA: Standard VGA card with Bochs VBE extensions, supporting higher resolutions. All Windows versions since Windows XP can recognize it.
- vmvga: A more advanced virtual video card than VGA.
- Description: Add a description for easy identification of the virtual machine (maximum 64 characters).

-
Virtual Disks and Network:
- Virtual Disks
- General: Configure the size of the virtual hard disk space. Up to 8 virtual hard disks can be added.
- Virtual Hard Disk Controller: Select the type of virtual hard disk controller.
- IDE: Compatible with most operating systems. Up to 4 IDE devices can be used.
- SATA: Compatible with modern operating systems.
- VirtIO SCSI: Better performance, but cannot be used to install or start the operating system.
- VirtIO Block: Only recommended for Linux virtual machines; the TerraMaster Guest Tool does not include the driver for this controller. It must be enabled in VMs Settings > Advanced Settings before use.
- Others: Configure advanced options such as space reclamation and IOPS range.
- Virtual Machine Network
- Network: Add or remove network interfaces for the virtual machine. Click "Settings" to configure the MAC address and network type.
Note- Network interfaces support VirtIO, e1000, and rtl8139 network adapter models.
- You can also choose to enable SR-IOV, which allows supported network adapters to accelerate network performance while consuming less CPU resources. To enable SR-IOV, both your host and physical network adapter must support SR-IOV.
- When SR-IOV is enabled, you cannot select the network adapter model.
- When SR-IOV is enabled, live migration of virtual machines between hosts is not supported.
- When SR-IOV is enabled, the virtual machine cannot be suspended.
- Virtual Disks
-
Other Settings:
- Boot ISO File: Select an image file as the boot medium for the virtual machine (e.g., operating system installation disk).
- Other ISO File: Attach an additional ISO file, such as a driver CD.
- Auto Start: Set whether to automatically start this virtual machine when the host starts.
- Boot Location: Select DVD/CD-ROM or the virtual hard disk.
- Firmware: Select the boot firmware (Legacy BIOS or UEFI).
- Serial Port: Enable or disable the serial port of the virtual machine.
- Virtual USB Controller: Add a USB controller and assign USB devices on the host to the virtual machine for use.
Note- A USB device cannot be assigned to multiple virtual machines.
- On some older operating systems (e.g., Windows 7), the virtual USB 3.0 controller may require installation of the nec-xhci driver and may have some compatibility issues.
- If a USB device does not exist on the host where the virtual machine is running, the device will be detached.
-
PCI Devices Assign PCI devices on the host directly to the virtual machine for use. Click "Add Device" and select the desired device from the available PCI devices on the host. The list will display the device name, type, IOMMU group, and PCI address.

Note- PCI device passthrough currently supports network cards, USB controllers, and USB devices. This feature involves certain risks and limitations; incorrect configuration may cause device conflicts or system crashes. After passthrough, control of the corresponding hardware is transferred from the host to the virtual machine, and all USB devices connected to that controller on the host (including keyboards, mice, and storage devices) will be removed immediately. If you rely on these devices for system interaction at that moment, you will directly lose control.
- Passthrough of the last network card is not supported, as this operation will disconnect the NAS from the network and make remote management impossible. Please adjust the configuration and try again.
- Hardware passthrough is a complex operation and is not recommended for non-professional users. If you need to perform it, be sure to back up important data in advance, stop services that depend on the corresponding hardware, and avoid enabling auto-start for the virtual machine until the system is confirmed to be stable, so as to reduce operational risks.
- Devices already occupied by other virtual machines cannot be assigned repeatedly.
-
Confirm Settings: Review all configuration information, check "Start virtual machine after creation" (optional), and click Confirm to complete creation.

Manage Virtual Machines
-
Power Management: Select a virtual machine and click the "Power" button to control its state.
- Start: Starts the virtual machine.
- Shut Down: Shuts down the virtual machine normally.
- Force Shut Down: Powers off the virtual machine directly, which may cause data loss.
- Restart: Restarts the virtual machine.
- Suspend: Suspends a running virtual machine and saves its running state to the storage space.
- Resume: Restores a suspended virtual machine to its running state before suspension.
-
Connect to Virtual Machine: The system will open the selected virtual machine via a VNC web console, where you can operate the virtual machine directly.
-
Edit Virtual Machine: Select a powered-off virtual machine and click "Edit" to modify its hardware specifications and permissions.
-
Delete Virtual Machine: Select a virtual machine and click "Delete" to remove it. This operation will delete both the virtual machine and all its associated virtual disks.
-
More Functions
- Clone: Quickly create a copy based on the current virtual machine, with a specified number of clones.
- Import: Import from an OVA file, or from a disk image on the host, and create a new virtual machine based on its configuration.
- Export: Export the virtual machine as a file and save it to a shared folder. You can choose standard OVA or VMware-compatible OVA.
- Migrate: Migrate the virtual machine to another host or change its storage location. Three migration modes are available: change the running host, change the storage space, or change both the running host and the storage space. Live migration is supported for running virtual machines.
- Take Snapshot: Manually create a restore point for the virtual machine (including state, settings, and all disks). You can view the snapshot type (crash-consistent/file-system-consistent), add a snapshot description, and protect the snapshot with the "Lock" option.
- Snapshot List: View and manage all snapshots, and restore or clone from any snapshot. When restoring from a snapshot, you can check "Take a snapshot before restoring the virtual machine", so that if the restore process fails, this snapshot can be used for restoration.
- It is recommended to install the QEMU Guest Agent. After installation, shutdown and restart commands will be passed to the operating system to ensure successful execution.
- When the virtual machine is running, core configurations such as CPU, memory, video card, network adapter, virtual hard disk order/interface, and USB controller cannot be modified. Only hot-adding of VirtIO virtual hard disks is supported.
- During import, the disk size and order in the OVA or disk image cannot be modified.
- When importing an OVA file, the system will automatically apply the configuration based on the file.
- When importing a virtual disk image into a virtual machine, if the image is not in the specified storage location, the system will download it from another location and save it to the current location.
Storage Space
You can add and manage storage spaces for virtual machines. All virtual hard disks use thin provisioning, only occupying physical space when data is written.
Storage Space List
Displays the status and usage of all added storage spaces in a list.
- General Information: Storage space name, status, used/total storage, usage.
- Detailed Information: Host, total capacity, available space, space allocated to virtual hard disks.
- Virtual Machine Usage: Displays, in a list, all virtual machines and their disk usage details that use virtual disks on this storage space.
Manage Storage Space
- Add Storage Space: Select a storage space with the Btrfs file system from the host's available volumes. You can set a "Low space" threshold (5~30). When the available space falls below this threshold or the storage space is full (2 GB), the system will send a notification message.
- Edit Storage Space: Rename an added storage space.
- Delete Storage Space: Remove the selected storage space from VMs. If the storage space still contains data of virtual machines or images, you can choose to keep these data.
- You can only select a volume with Btrfs and more than 2 GB of available space as the virtual machine storage space.
- When there is a running virtual machine in the storage space, that storage space cannot be deleted.
Network
You can create and manage virtual networks for virtual machines, enabling communication between virtual machines and between virtual machines and external networks.
Network List
Displays all configured virtual networks in a list.
- General Information: Network name, status, network type (Private, External).
- Association Information: Number of hosts using the physical interface, network interface, VLAN ID, list of virtual machines using this network.
Manage Network
- Create Network: Set the network name, network type (Private, External), and VLAN ID (optional), and from all hosts, select the physical network interfaces to be used for constructing this virtual network.
- Edit Network: Change the virtual network's name, VLAN ID, or associated physical network interfaces.
- Delete Network: Delete the selected virtual network.
- If some network interfaces of the virtual network are not working properly, the status of the virtual network will become warning, but the virtual machine's network connection will still be available.
- If all network interfaces of the virtual network are not working properly, the status of the virtual network will become error. Please check the network devices and confirm the network connection of the environment.
- An external virtual network must include at least one network interface.
- After a virtual network is deleted, all virtual interfaces in that network will be disconnected. To reassign a virtual interface, go to VMs > Virtual Machines > Edit.
- If Open vSwitch fails to be enabled automatically, please go to "Control Panel > Network" to enable it manually to ensure the virtual machine can connect to the network normally.
Images
The Images module is used to manage operating system installation disks (.iso) and virtual hard disk image files (.vmdk, .qcow2, etc.) required for creating virtual machines.
Image List
Displays all added image files in a list.
- General Information: Image name, status (Enabled/Disabled), file type, file size.
- Other Information: Image version, storage location.
Add Image
- Select Import Method: Choose to import from "NAS local file" or "Computer local file".
- Select File: In the opened window, select the desired image file. Formats .iso, .vmdk, .vdi, .vhd, .vhdx, .img, .qcow2 are supported.
- Select Storage Space: Select the storage space to store this image file.
- Note: If uploading manually from a computer, do not close or refresh the browser during the upload process.
- Supported formats:
- ISO files: *.iso.
- Hard disk images: *.vmdk, *.vdi, *.vhd, *.vhdx, *.img, *.qcow2.
- If manually uploading installation files from a computer, do not close or refresh the browser during the upload process to avoid interrupting the upload.
Image Management
- Edit Image: Modify the storage location of the image file.
- Delete Image: Delete the selected image file from the application. If the image has been mounted by a virtual machine, it will first be detached from the virtual machine after deletion.
Logs
Records operations in the VMs application, supporting log viewing, export, and management.
Manage Logs
On the Logs page, you can view logs of all tasks, or select specific tasks to view logs. You can also perform the following settings for logs:
- Search: Search for events;
- Refresh: Refresh the logs;
- Export: Export logs;
- Delete: Delete logs – can delete all logs or specific logs;
- Settings: Set the log retention policy; logs that do not comply with the policy will be automatically deleted.
CLI Command Line Tool
VMs comes with a CLI command line tool that can be used to query and manage virtual machines. After VMs is installed, it can be invoked in the local terminal, SSH sessions, and scripts or automated O&M tools. The CLI communicates with the VMs service through the local Unix socket and supports table and JSON output, facilitating batch management and secondary development.
For details, see VMs CLI.