Settings in /etc/hdparm.conf are not applied during boot
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
hdparm (Ubuntu) |
Confirmed
|
Undecided
|
Unassigned |
Bug Description
Binary package hint: hdparm
After upgrade to Lucid the hard drives never spindown. The hdparm spindown settings (and most likely others) in /etc/hdparm.conf are not being applied during boot.
This seems to have happened after removing the init.d script.
lsb_release -rd
Description: Ubuntu 10.04 LTS
Release: 10.04
apt-cache policy hdparm
hdparm:
Installed: 9.15-1ubuntu9
Candidate: 9.15-1ubuntu9
Version table:
*** 9.15-1ubuntu9 0
500 http://
100 /var/lib/
cat /etc/hdparm.conf
/dev/sda {
spindown_time = 240
}
/dev/sdb {
spindown_time = 240
}
/dev/sdc {
spindown_time = 240
}
/dev/sdd {
spindown_time = 240
}
/dev/sde {
spindown_time = 240
}
/dev/sdf {
spindown_time = 240
}
/dev/sdg {
spindown_time = 240
}
Some of my comments regarding the issue from #568120.
It looks like the stuff from "/etc/init. d/hdparm" was moved into "/lib/udev/hdparm" and "/lib/hdparm/ hdparm- functions" . Which is fine, as /etc/hdparm.conf should still work.
The udev rule in "/lib/udev/ rules.d/ 85-hdparm. rules" calls "/lib/udev/hdparm" when udev "add" event is triggered for new drives, which in turn should set spindown intervals or any other settings you specified in "/etc/hdparm.conf" for your drives.
If I run "sudo udevadm trigger", which triggers udev "add" events for all devices, the settings do get applied just fine.
However if I reboot, then the settings do not get applied during boot.
So it seems the functionality in the new scripts works as it should, its just that they are not triggered during boot.
I added some "echo" lines to "/lib/udev/hdparm" just to debug, and when I manually trigger "add" events, my debug logs are created. After reboot no debug logs are created.
So I am guessing that either the rules script does not get triggered during boot, or may be it is triggered to early, which causes it to fail (e.g. file system not mounted etc).