Terramaster F8 Plus, Enabling VT-d

I recently purchased a Terramaster F8 Plus, which is an all NVMe NAS.

I was able to install TrueNAS 25.04.0 by disabling the VT-d option in the bios.

Recently, I discovered a thread mentioning that adding pci=nommconf to the grub.cfg allows VT-d to be enabled. After some research, I created /boot/grub/custom.cfg using nano and added ‘set pci=nommconf’ (without quotes) to see if I could enable VT-d. My understanding is that parameters listed in custom.cfg are added to grub.cfg when it is rebuilt, but I’m not sure when a rebuild occurs.

It appears that adding ‘set pci=nommconf’ to custom.cfg did not work since TrueNAS crashes as soon as it attempts to list the disks when creating a pool.

Does TrueNAS automatically rebuild grub.cfg when it reboots, or is there something else that I should try?

Thanks!

1 Like

I was able to make this work throught he magic of chatgpt. Below is the method I used to add pci=nommconf to grub using the midclt command in shell.

[HOWTO] Add Persistent Kernel Boot Parameters in TrueNAS SCALE (e.g., pci=nommconf)

If you’re trying to enable VT-d or need to pass custom kernel parameters like pci=nommconf (useful for fixing NVMe-related crashes when VT-d is enabled), do not edit GRUB manually — it can be overwritten during updates.

Instead, use the built-in midclt command, which safely stores the setting in the system configuration.


:white_check_mark: Steps (Tested on TrueNAS SCALE 25.04.0+)

  1. Open a shell (via Web UI or local terminal).
  2. Run this command to set the kernel option:

bash

Copy code

midclt call system.advanced.update '{"kernel_extra_options": "pci=nommconf"}'
  1. Confirm the change:

bash

Copy code

midclt call system.advanced.config | grep kernel_extra_options

You should see:

json

Copy code

"kernel_extra_options": "pci=nommconf"
  1. Reboot:

bash

Copy code

reboot

:arrows_counterclockwise: To Remove the Parameter Later:

bash

Copy code

midclt call system.advanced.update '{"kernel_extra_options": ""}'

:bulb: Notes:

  • This method is persistent across upgrades and safe to use.
  • You can include multiple parameters like so:

bash

Copy code

'{"kernel_extra_options": "pci=nommconf intel_iommu=on"}'

Hope this helps others with similar hardware issues or advanced configuration needs!