Saya memiliki masalah yang sama tidak ada solusi di sini yang sesuai dengan kebutuhan saya. Menggunakan cron benar-benar merupakan solusi, bukan solusi, aturan udev dijalankan ketika daya terhubung / terputus tetapi tidak setelah ditangguhkan / dilanjutkan dan pm-utilstidak lagi digunakan secara default di Fedora 19 ketika Anda misalnya menutup laptop Anda.
Karena systemdsekarang bertanggung jawab untuk menangguhkan / berhibernasi, saya pikir satu-satunya cara yang tepat untuk menangani situasi ini adalah dengan membuat systemdunit yang akan berjalan baik setelah boot dan setelah melanjutkan dari suspend.
Catatan:
- Dengan menggunakan
/dev/disk/by-id/...alih-alih /dev/sda, Anda selalu yakin untuk mendapatkan disk yang tepat (sda, b, c tergantung pada urutan mereka terdeteksi oleh kernel)
- Anda dapat memiliki banyak
ExecStartbaris sehingga Anda dapat mengonfigurasi beberapa disk
Inilah unit yang saya tulis:
[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
Simpan file ini sebagai /etc/systemd/system/hdsilence.servicedan kemudian aktifkan menggunakan:
systemctl enable hdsilence.service
systemctl daemon-reload