Mine appears to be a similar issue to what was reported here on these forums under /t/good-ol-disks-have-duplicate-serial-numbers-none-but-they-dont/63121 (Sorry, my account can’t post full URLs).
I am trying to evaluate TrueNAS Scale 25.10.2.1 - Goldeye on VMWare Workstation Pro 25H2.
I have added a series of SCSI virtual disks to the TN VM. I edited the VM’s config file to add the line disk.enableUUID = "TRUE" so that drives can be identified uniquely in Linux.
When trying to create a pool, I get an error in the WebUI claiming that the selected disks have identical (“None”) serial numbers.
The output of lsblk -o NAME,SERIAL is however:
sdb 6000c295ed8294f1074fc3d92afdd4a6
sdc 6000c29da1ec0401b00a68b305c6b183
sdd 6000c295f164cd044218b634749f2918
sde 6000c29d30b438211f07cbc98625924d
sdf 6000c29f618de5e657b5365a33b9ec74
sdg 6000c29053f7f5f24da28b6fa4edbe1f
The output of midclt call disk.query | jq similarly appears fine, with unique serial numbers:
{
"identifier": "{serial_lunid}6000c29d30b438211f07cbc98625924d_6000c29d30b43821",
"name": "sde",
"subsystem": "scsi",
"number": 2112,
"serial": "6000c29d30b438211f07cbc98625924d",
"lunid": "6000c29d30b43821",
"size": 21474836480,
"description": "",
"transfermode": "Auto",
"hddstandby": "ALWAYS ON",
"advpowermgmt": "DISABLED",
"expiretime": null,
"model": "VMware_Virtual_S",
"rotationrate": null,
"type": "HDD",
"zfs_guid": null,
"bus": "SCSI",
"devname": "sde",
"enclosure": null,
"pool": null
},
In the WebUI, serial numbers also appear fine, and appear unique:
[I am not able to attach screenshots, presumably because my forums account is too new]
The smartctl output similarly shows unique and present serial numbers:
sudo smartctl -a /dev/sdb
[sudo] password for truenas_admin:
smartctl 7.4 2023-08-01 r5530 [x86_64-linux-6.12.33-production+truenas] (local build)
Copyright (C) 2002-23, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF INFORMATION SECTION ===
Vendor: VMware,
Product: VMware Virtual S
Revision: 1.0
User Capacity: 21,474,836,480 bytes [21.4 GB]
Logical block size: 512 bytes
Rotation Rate: Solid State Device
Logical Unit id: 0x6000c295ed8294f1074fc3d92afdd4a6
Serial number: 6000c295ed8294f1074fc3d92afdd4a6
Device type: disk
Local Time is: Mon Mar 23 08:27:34 2026 PDT
SMART support is: Unavailable - device lacks SMART capability.
=== START OF READ SMART DATA SECTION ===
Current Drive Temperature: 0 C
Drive Trip Temperature: 0 C
Error Counter logging not supported
Device does not support Self Test logging
However, the issue is evident when running python3 -c "from middlewared.utils.disks_.disk_class import iterate_disks;print(list(x.serial for x in iterate_disks()))":
truenas_admin@truenas[~]$ python3 -c "from middlewared.utils.disks_.disk_class import iterate_disks;print(list(x.serial for x in iterate_disks()))"
[None, None, None, None, None, None, None, 'VMware NVME_0002', 'VMware NVME_0003', 'VMware NVME_0000', 'VMware NVME_0001']
I understand that a similar issue, but on Proxmox, was found to have a workaround as described in this post t/error-topology-disks-have-duplicate-serial-numbers-none-sda-sdb-sdc/58472/11(Sorry, my account can’t post full URLs).
I am new to TrueNAS Scale - the last time I touched it was in the early FreeNAS days - and I am trying to evaluate it in a virtual environment before doing the same on physical hardware. There are some configurations that are just quicker/easier for me to test in a virtual environment. VMWare Workstation is a pretty popular virtualization environment for testing. But it appears that in recent versions of TN Scale it is impossible to evaluate the product on VMWare Workstation due to the way serial numbers are retrieved (at least for the purpose of pool creation in the WebUI).
Also noteworthy is that I tried the latest dev channel build of TrueNAS Scale (as of March 22, 2026) with the issue happening in it too.
Maybe I am missing something. I would appreciate any tips and potential workarounds.
EDIT: I should also mention that the older TrueNAS Scale ElectricEel-24.10.2.1 happily creates a pool in the same VM.
EDIT 2: After an in-place upgrade to 25.10.2.1 - Goldeye, the new version is able to utilize the pool that I created with ElectricEel-24.10.2.1. This means that the issue was indeed introduced in a more recent version of TN.