Hi,
I freshly installed TrueNas CE 25.10.1 on my system (bare metal) with 8 Drives: 4 Seagate IronWolf & 4 Exos drives, so far everything seems to work correctly except for drive power management.
I’m quite new to TrueNas, but i’ve read quite some documentation beforehand (maybe i’ve missed something though).
For info: These drives don’t support APM but EPC (Seagate self power management), so i’m not using APM in TrueNas (set to Disabled) but the built-in EPC of the drives (they worked perfectly on the previous system)
Initial problem: Only 2 random drives from the Pool of 8 are following the EPC settings once they are set back to “Active/Idle State” by accessing the HDD Pool for instance, this can be reproduced 100% of the time and after each reboot, but the drives stuck in Active/Idle are random after each reboot.
Test parameters:
-
8 HDD in Raid Z2 in SATA
-
System Dataset is on the boot-pool (nVME SSD).
-
No applications running
-
No VMs
-
No scrubbing or other planned tasks
-
For testing purposes all services are down included SMB/NFS shares.
-
No visible reads/writes on the monitoring
After a fresh boot, all the drives are behaving like they should: going from Idle State to IdleA > B > C then Standby Z:
Don’t mind the EPC tight settings, they’re just here for testing purposes.
root@Chrono[/home/truenas_admin]# openSeaChest_PowerControl -d /dev/sda --checkPowerMode
==========================================================================================
openSeaChest_PowerControl - openSeaChest drive utilities - NVMe Enabled
Copyright (c) 2014-2024 Seagate Technology LLC and/or its Affiliates, All Rights Reserved
openSeaChest_PowerControl Version: 3.4.0-6_2_0 X86_64
Build Date: Jun 9 2024
Today: Sat Jan 3 19:13:35 2026 User: root
==========================================================================================
/dev/sg1 - ST22000NT001-3LS101 - ZX21P7WD - EN01 - ATA
Device is in the PM2: Standby state and device is in the Standby_z power condition
root@Chrono[/home/truenas_admin]# openSeaChest_PowerControl -d /dev/sda --showEPCSettings
==========================================================================================
openSeaChest_PowerControl - openSeaChest drive utilities - NVMe Enabled
Copyright (c) 2014-2024 Seagate Technology LLC and/or its Affiliates, All Rights Reserved
openSeaChest_PowerControl Version: 3.4.0-6_2_0 X86_64
Build Date: Jun 9 2024
Today: Sat Jan 3 19:13:45 2026 User: root
==========================================================================================
/dev/sg1 - ST22000NT001-3LS101 - ZX21P7WD - EN01 - ATA
===EPC Settings===
* = timer is enabled
C column = Changeable
S column = Savable
All times are in 100 milliseconds
Name Current Timer Default Timer Saved Timer Recovery Time C S
Idle A *1 *1 *1 1 Y Y
Idle B *1200 *1200 *1200 4 Y Y
Idle C *1500 6000 *1500 25 Y Y
Standby Z *3000 9000 *3000 125 Y Y
And once they’re accessed, only two random drives (can vary after each reboot) are still following the EPC settings and all the other ones are stuck in Active/Idle State:
root@Chrono[/home/truenas_admin]# openSeaChest_PowerControl -d /dev/sda --checkPowerMode
==========================================================================================
openSeaChest_PowerControl - openSeaChest drive utilities - NVMe Enabled
Copyright (c) 2014-2024 Seagate Technology LLC and/or its Affiliates, All Rights Reserved
openSeaChest_PowerControl Version: 3.4.0-6_2_0 X86_64
Build Date: Jun 9 2024
Today: Sat Jan 3 20:01:25 2026 User: root
==========================================================================================
/dev/sg1 - ST22000NT001-3LS101 - ZX21P7WD - EN01 - ATA
Device is in the PM2: Standby state and device is in the Standby_z power condition
root@Chrono[/home/truenas_admin]# openSeaChest_PowerControl -d /dev/sdc --checkPowerMode
==========================================================================================
openSeaChest_PowerControl - openSeaChest drive utilities - NVMe Enabled
Copyright (c) 2014-2024 Seagate Technology LLC and/or its Affiliates, All Rights Reserved
openSeaChest_PowerControl Version: 3.4.0-6_2_0 X86_64
Build Date: Jun 9 2024
Today: Sat Jan 3 20:01:29 2026 User: root
==========================================================================================
/dev/sg3 - ST22000NT001-3LS101 - ZX208EG0 - EN01 - ATA
Device is in the PM0: Active state or PM1: Idle State
This doesn’t make much sense to me as all these drives are in the same pool.
What didn’t work:
-
Waiting 24h
-
Trying to access the Drive Pool again: the two disks in Standby are back to Active and goes back to Standby again, the 6 remaining ones are still stuck in “Idle State”
-
Having APM value to Disabled, 1, 64, 127 in the TrueNas GUI… same behavior, it seems to be able to set the Standby_Z values of the drives but nothing much.
What did work:
-
A reboot, but valid only after the 1st Idle x state, then 6 drives are stuck to Active/Idle afterwards.
-
Setting APM Standby value in TrueNas GUI seems to unlock the drive power transition.
- The GUI page puts all the drive in Active/Idle State, if only one drive is changed, the targeted drive can transition and the other get stuck like any other HDD Pool access
-
Removing the Idle State with openSeaChest: openSeaChest_PowerControl -d /dev/sda --transitionPower idleUnload: seems to allow the drive to power transition again and work as intended until the next HDD Pool Access: this may be the beginning of a workaround script.
I’m not really sure of why the pool behaves like this, maybe i missed something or it’s likely a ZFS byproduct, if someone has an idea, you’re welcome! Thanks for taking the time to read my sleep deprived experiments.