ฉันมีปัญหาเดียวกันไม่มีวิธีแก้ไขที่ตรงกับความต้องการของฉัน การใช้ cron นั้นเป็นวิธีการแก้ปัญหาไม่ใช่วิธีแก้ปัญหากฎ udev จะทำงานเมื่อมีการเชื่อมต่อ / ตัดการเชื่อมต่อพลังงาน แต่ไม่ใช่หลังจากหยุดชั่วคราว / ทำงานต่อและpm-utilsไม่ได้ใช้งานเป็นค่าเริ่มต้นใน Fedora 19 เมื่อคุณปิดฝาแล็ปท็อปของคุณ
เนื่องจากsystemdตอนนี้มีหน้าที่รับผิดชอบในการระงับ / จำศีลฉันคิดว่าวิธีที่เหมาะสมในการจัดการกับสถานการณ์นี้คือการสร้างsystemdหน่วยที่จะทำงานทั้งหลังจากบูตและหลังจากกลับมาทำงานจากการหยุดชั่วคราว
หมายเหตุ:
- โดยการใช้
/dev/disk/by-id/...แทนคุณ/dev/sdaจะได้รับดิสก์ที่ถูกต้องเสมอ (sda, b, c ขึ้นอยู่กับลำดับที่เคอร์เนลตรวจพบ)
- คุณสามารถมีหลาย
ExecStartบรรทัดเพื่อให้คุณสามารถกำหนดค่าหลายดิสก์
นี่คือหน่วยที่ฉันเขียน:
[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
บันทึกไฟล์นี้เป็น/etc/systemd/system/hdsilence.serviceแล้วเปิดใช้งานโดยใช้:
systemctl enable hdsilence.service
systemctl daemon-reload