On Sat, 2021-03-27 at 07:59 -0500, Roger Heflin wrote:
Wireshark won't help as it won't tell you what process is
doing. And
decoding the commands will be very difficult.
Yes, that's what I thought.
You probably should send the power down and wait a few seconds
before
starting the loop. It would seem to be pretty likely that if in
the
middle of the spin-down *ANY* command that is received causes it to
power the disk fully back up and aborts the spin-down. But once the
disk is completely spun-down that specific command does not spin the
disk back up. In the middle of the spin-down it would appear that
the disk is not yet in the certain commands do not cause a spin-up
state. This would assume the disk has 2 operational states. When
in
the spun-up state any command causes a spin-up, once in the spun-down
state certain commands don't cause a spin-up. And until the
spin-down is completed it would appear it is still in the first
state.
Although that seems very reasonable, it doesn't explain why the *exact
same script* works when used from the command line, and doesn't work
when called from the systemd unit. All the looping, delaying, checking
etc. is within the script itself.
poc