← Back to team overview

desktop-packages team mailing list archive

[Bug 199094] Re: hdparm.conf settings (other than apm) are lost on suspend/resume?

 

I've given up on hdparm.conf now. As noted in #27, it seems that systemd
and udev/udisks2 is the way to go, but it's not clear how exactly.

Here's what I've done. This bug report isn't the ideal place to document
it, but I can't find a better place for now. Maybe it'll help someone
who finds it through a search engine.

The Ubuntu Disks utility (not in the Launcher by default) allows
configuration of the spindown/standby time and other settings. (See
below for Kubuntu.) Click on the disk in the left-hand pane, then click
the "hamburger" icon at the top right and select Drive Settings.

Great! Except... what it says in the title of this bug. Also:
https://bugs.launchpad.net/ubuntu/+source/gnome-disk-utility/+bug/1511703

I fixed this by coding a sleep script as shown in
https://wiki.archlinux.org/index.php/Power_management#Hooks_in_.2Fusr.2Flib.2Fsystemd.2Fsystem-sleep
Note the directory in Ubuntu is /lib/systemd/system-sleep/, which is different from Arch Linux.

In the "post/*" case I simply coded the required hdparm command
directly, e.g.

hdparm -B 254 -S 120 /dev/sdb

I'd earlier tried to make hdparm.conf work by emulating the pmutils
scripts by coding, e.g.,

DEVNAME=/dev/sdb /lib/udev/hdparm

but that didn't work for some reason. I don't think I worked out why.

Kubuntu users (like me) and others who don't have the Ubuntu Disks
utility available need to write a config file (which, of course, is what
hdparm.conf is) to set the post-boot spindown time, etc. See udisks(8)
for the format of the file /etc/udisks2/IDENTIFIER.conf, the file which
the Disks utility writes. For instance:

[ATA]
APMLevel=254
StandbyTimeout=120

What is IDENTIFIER? Run "udisksctl dump" (the output is piped to less) and look for an object path starting "/org/freedesktop/UDisks2/drives/" with your drive model and serial number. Within the org.freedesktop.UDisks2.Drive interface underneath that, the Id property is the required IDENTIFIER part of the filename. See
http://udisks.freedesktop.org/docs/latest/gdbus-org.freedesktop.UDisks2.Drive.html#gdbus-property-org-freedesktop-UDisks2-Drive.Id

So it seems that in 2015, it's a bit more complicated than writing
/etc/hdparm.conf. It seems (unless there's currently a better way) it's
necessary to specify the hdparm settings for the post-boot and post-
resume conditions in two different ways.

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to pm-utils in Ubuntu.
https://bugs.launchpad.net/bugs/199094

Title:
  hdparm.conf settings (other than apm) are lost on suspend/resume?

Status in hdparm package in Ubuntu:
  Confirmed
Status in pm-utils package in Ubuntu:
  Confirmed

Bug description:
  Update: This is on Intrepid.

  Problem:
  - Hard disks lose settings (the APM level for example) when they are powered off.
  => Settings in /etc/hdparm.conf persist only from boot to next suspend.

  Expected:
  All settings in /etc/hdparm.conf should persist across {suspend,hibernate}/resume.

  Effects:
  At least the apm setting in hdparm.conf is lost. This makes https://bugs.launchpad.net/ubuntu/+source/acpi-support/+bug/59695 so bad - users are not able to set the apm value without messing with their system (installing stuff from forums) because of this bug.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/hdparm/+bug/199094/+subscriptions