Ich habe eine dieser Festplatten, die ein sehr aggressives Power-Management haben. Um zu verhindern, dass Lastzyklen auf kritische Zahlen ansteigen, habe ich eine udev-Regel geschrieben:
SUBSYSTEM=="block", SUBSYSTEMS=="scsi", ATTRS{model}=="TOSHIBA MK2555GS", RUN+="/usr/bin/hdparm -B 200 /dev/%k"
Das Problem ist, dass diese Regel nicht ausgelöst wird, nachdem ich mein Notebook aus dem Ruhezustand geweckt habe. Daher habe ich den folgenden systemd Service:
[Unit]
Description=root resume actions
After=suspend.target
[Service]
Type=simple
ExecStart=/bin/hdparm -B 200 /dev/sda
[Install]
WantedBy=suspend.target
Ich würde es vorziehen ExecStart
, wenn der Befehl so etwas wie wäre /bin/udevadm trigger --subsystem-match="block"
. Ich muss den Kernelnamen also nicht explizit angeben. Wenn ich diesen Befehl manuell ausführe, wird das Energiemanagement korrekt angepasst, funktioniert jedoch nicht über den systemd-Dienst. Gibt es eine Möglichkeit, dies zu tun? Übrigens benutze ich Arch-Linux
ExecStart= /bin/bash -c "/bin/udevadm trigger --subsystem-match='block'"