0

My setup: Raspberry 4 / Raspberry OS; additional 3TB WD HDD attached via USB3

I was using hdparm to spin down this harddisk after 3o min. This was working perfectly fine until few days ago.

Now, there was a power outage that caused the raspi to reboot, and since then the hdparm command just stopped working.

Here is the output:

root@raspi:/ # hdparm -S /dev/sdb
  -S: bad/missing standby-interval value (0..255)
    
root@raspi:/ # hdparm -S 36 /dev/sdb
/dev/sdb:
 setting standby to 36 (3 minutes)
 
root@sraspi:/ # hdparm -S /dev/sdb
  -S: bad/missing standby-interval value (0..255)

The drive is not spinning down after 3 min.

Smartmontools say the disk is healthy, also some samba shares on the disk work fine. And like I said, before the power outage and forced reboot all was ok.

Anybody has an idea what's the problem here???

Update: I tried to use sdparm, result:

root@raspi:/ # sdparm --all /dev/sdb
    /dev/sdb: asmedia   ASM1153E          0   
Write parameters (MMC) mode page:
  BUFE          0  [cha: n, def:  0, sav:  0]
root@raspi:/ # 

This is very weird for me again:

  1. it says ASM1153E, which is my USB controller, but wasn't sdparm supposed to talk directly to the harddisk???
  2. there are parameters missing, especially SCT and STANDBY which I intended to use (maybe because of 1.??)

Any help or thoughts are very appreciated

6
  • Putting the disk to sleep with hdparm -y /dev/sdb works! Commented Apr 7, 2022 at 17:46
  • "The drive is not spinning down after 3 min" – Please confirm you are aware that any disk activity resets the timer. How exactly do you know there was no activity? Commented Apr 7, 2022 at 17:52
  • Confirmed. The setup worked fine for months with a long 30min timer (I could audibly hear the drive spin down and up again, the raspi is right in front of me on my desk). Now even the shortest time values will not trigger a spindown. I did not change config or anything else on the rapsi. Commented Apr 7, 2022 at 18:05
  • Also, see my code example above. I set the timeout with -S 36. Then I query the set value using only -S. And it says "bad/missing". Thats wrong, isn't it?? It looks like hdparm didnt even set the value... Commented Apr 7, 2022 at 18:09
  • I really doubt hdparm -S can get the value. The manual says "set", while for some other options it explicitly says "get/set". And there is this answer which may or may not be right, but if hdparm -S ever worked for getting the value then I guess some answer there would advise it. I've seen other similar threads, some advise hdparm -I … | grep level (which I believe is totally wrong) but none advises hdparm -S. IMO the error you got tells nothing about your drive. Maybe you're right something is wrong, but the error has nothing to do with it. Commented Apr 7, 2022 at 18:49

1 Answer 1

1

It might be that the Advanced Power Management Feature is currently turned off. From the manpages of hdparm:

-B     Get/set  Advanced  Power  Management feature, if the drive supports it. A low value
       means aggressive power management  and  a  high  value  means  better  performance.
       Possible  settings  range  from  values 1 through 127 (which permit spin-down), and
       values 128 through 254 (which do not permit  spin-down).   The  highest  degree  of
       power  management  is attained with a setting of 1, and the highest I/O performance
       with a setting of 254.  A value of 255  tells  hdparm  to  disable  Advanced  Power
       Management  altogether  on the drive (not all drives support disabling it, but most
       do).

You could try to set the value to 127, which is the highest that permits spin-down(s).

That would be: sudo hdparm -B 127 /dev/sdb. May the command work for those that stumble across this post...

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .