Tuve el mismo problema, ninguna de las soluciones aquí satisfizo mis necesidades. El uso de cron es realmente una solución alternativa, no una solución, las reglas de udev se ejecutan cuando se conecta / desconecta la alimentación, pero no después de suspender / reanudar y pm-utilsya no se usan de manera predeterminada en Fedora 19 cuando, por ejemplo, cierra la tapa de su computadora portátil.
Como systemdahora es responsable de suspender / hibernar, creo que la única forma adecuada de manejar esta situación es crear una systemdunidad que se ejecute tanto después del arranque como después de reanudar la suspensión.
Notas:
- Al usar en
/dev/disk/by-id/...lugar de /dev/sda, siempre está seguro de obtener el disco correcto (sda, b, c depende del orden en que el núcleo los detecte)
- Puede tener varias
ExecStartlíneas para poder configurar múltiples discos
Aquí está la unidad que escribí:
[Unit]
Description=Silence HD
After=suspend.target
[Service]
Type=oneshot
# Disable automatic head parking for the main disk
ExecStart=/sbin/hdparm -B 254 /dev/disk/by-id/ata-ST3250824AS_4N127FD1
# Enable automatic spin down after 30 seconds for the second, infrequently used disk
ExecStart=/sbin/hdparm -S 6 /dev/disk/by-id/ata-ST31000528AS_BVP5H5X1
[Install]
WantedBy=suspend.target basic.target
Guarde este archivo como /etc/systemd/system/hdsilence.servicey luego habilítelo usando:
systemctl enable hdsilence.service
systemctl daemon-reload