I’m on SCALE 24.04.2. Despite the warnings I decided to go for 5x8 TB Exos 7E8 drives (ST8000NM000A-2KE101). They are very noisy. My apartment is small, and my NAS mainly servers as an archiving solution. I’m fine with having the drives spin down for the sake of silence.
The TrueNAS GUI settings are APM-based, which these drives don’t support.
I downloaded openSeaChest 24.08 and ran openSeachest_PowerControl -d /dev/sda --showEPCSettings:
This is my pool which i’m trying to put on standby, notice my boot ssd (/dev/sdd) is missing. It’s definitely in the boot-pool since that one doesnt show up in the overview.
I have no issue with trying to find out what’s keeping the drives from cycling through their power states properly. I’m also looking for ways to do that. Unfortunately, iotop doesn’t seem to be available.
@Jisifus
Where did you download openSeaChest? I could only find the source…
I myself have exact the same problem. My 8 Seagate ST3000NM0023 do not cycle through their powerstates. Once I had it running, and I could see the “Additional sense: Idle condition activated by timer” when checking the power state.
But after configuring the drives according to my needs the timers are not running anymore.
Thats the configuration:
root@truenas[/mnt/EBN_APPS/NAS_Tools/Tools/SeaChest]# sdparm --flexible -6 -p po -l /dev/sda
/dev/sda: SEAGATE ST3000NM0023 0006
Direct access device specific parameters: WP=0 DPOFUA=1
Power condition [po] mode page:
PM_BG 0 [cha: n, def: 0, sav: 0] Power management, background functions, precedence
STANDBY_Y 0 [cha: y, def: 0, sav: 0] Standby_y timer enable
IDLE_C 1 [cha: y, def: 0, sav: 1] Idle_c timer enable
IDLE_B 1 [cha: y, def: 1, sav: 1] Idle_b timer enable
IDLE_A 1 [cha: y, def: 1, sav: 1] Idle_a timer enable
STANDBY_Z 1 [cha: y, def: 0, sav: 1] Standby_z timer enable
IACT 10 [cha: y, def: 10, sav: 10] Idle_a condition timer (100 ms)
SZCT 9000 [cha: y, def:9000, sav:9000] Standby_z condition timer (100 ms)
IBCT 3000 [cha: y, def:3000, sav:3000] Idle_b condition timer (100 ms)
ICCT 6000 [cha: y, def:6000, sav:6000] Idle_c condition timer (100 ms)
SYCT 6000 [cha: y, def:6000, sav:6000] Standby_y condition timer (100 ms)
CCF_IDLE 1 [cha: y, def: 1, sav: 1] check condition if from idle_c
CCF_STAND 1 [cha: y, def: 1, sav: 1] check condition if from a standby
CCF_STOPP 2 [cha: y, def: 2, sav: 2] check condition if from stopped