[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Does hdparm not run at startup anymore?



+ Alexandre, hdparm maintainer

 

On Friday 11 November 2016 23:11:24 Rainer Dorsch wrote:

> Hi,

>

> I configure sdb in /etc/hdparm.conf to apm=64, but when I start the system, apm does not change. Interesting enough a /etc/init.d/hdparm restart fixes the problem:

>

>

> root@Silberkiste:~# cat /etc/hdparm.conf

> ## This is the default configuration for hdparm for Debian. It is a

> ## rather simple script, so please follow the following guidelines :)

> ## Any line that begins with a comment is ignored - add as many as you

> ## like. Note that an in-line comment is not supported. If a line

> ## consists of whitespace only (tabs, spaces, carriage return), it will be

> ## ignored, so you can space control fields as you like. ANYTHING ELSE

> ## IS PARSED!! This means that lines with stray characters or lines that

> ## use non # comment characters will be interpreted by the initscript.

> ## This has probably minor, but potentially serious, side effects for your

> ## hard drives, so please follow the guidelines. Patches to improve

> ## flexibilty welcome. Please read /usr/share/doc/hdparm/README.Debian for

> ## notes about known issues, especially if you have an MD array.

> ##

> ## Note that if the init script causes boot problems, you can pass 'nohdparm'

> ## on the kernel command line, and the script will not be run.

> ##

> ## Uncommenting the options below will cause them to be added to the DEFAULT

> ## string which is prepended to options listed in the blocks below.

> ##

> ## If an option is listed twice, the second instance replaces the first.

> ##

> ## /sbin/hdparm is not run unless a block of the form:

> ## DEV {

> ## option

> ## option

> ## ...

> ## }

> ## exists. This blocks will cause /sbin/hdparm OPTIONS DEV to be run.

> ## Where OPTIONS is the concatenation of all options previously defined

> ## outside of a block and all options defined with in the block.

>

> # -q be quiet

> quiet

> # -a sector count for filesystem read-ahead

> #read_ahead_sect = 12

> # -A disable/enable the IDE drive's read-lookahead feature

> #lookahead = on

> # -b bus state

> #bus = on

> # -B apm setting

> #apm = 255

> # -B apm setting when on battery

> #apm_battery = 127

> # -c enable (E)IDE 32-bit I/O support - can be any of 0,1,3

> #io32_support = 1

> # -d disable/enable the "using_dma" flag for this drive

> #dma = off

> # -D enable/disable the on-drive defect management

> #defect_mana = off

> # -E cdrom speed

> #cd_speed = 16

> # -k disable/enable the "keep_settings_over_reset" flag for this drive

> #keep_settings_over_reset = off

> # -K disable/enable the drive's "keep_features_over_reset" flag

> #keep_features_over_reset = on

> # -m sector count for multiple sector I/O

> #mult_sect_io = 32

> # -P maximum sector count for the drive's internal prefetch mechanism

> #prefetch_sect = 12

> # -r read-only flag for device

> #read_only = off

> # -s Turn on/off power on in standby mode

> # poweron_standby = off

> # -S standby (spindown) timeout for the drive

> #spindown_time = 24

> # -u interrupt-unmask flag for the drive

> #interrupt_unmask = on

> # -W Disable/enable the IDE drive's write-caching feature

> #write_cache = off

> # -X IDE transfer mode for newer (E)IDE/ATA2 drives

> #transfer_mode = 34

> # -y force to immediately enter the standby mode

> #standby

> # -Y force to immediately enter the sleep mode

> #sleep

> # -Z Disable the power-saving function of certain Seagate drives

> #disable_seagate

> # -M Set the acoustic management properties of a drive

> #acoustic_management

> # -p Set the chipset PIO mode

> # chipset_pio_mode

> # --security-freeze Freeze the drive's security status

> # security_freeze

> # --security-unlock Unlock the drive's security

> # security_unlock = PWD

> # --security-set-pass Set security password

> # security_pass = password

> # --security-disable Disable drive locking

> # security_disable

> # --user-master Select password to use

> # user-master = u

> # --security-mode Set the security mode

> # security_mode = h

>

> # Root file systems. Please see README.Debian for details

> # ROOTFS = /dev/hda

>

> ## New note - you can use straight hdparm commands in this config file

> ## as well - the set up is ugly, but it keeps backwards compatibility

> ## Additionally, it should be noted that any blocks that begin with

> ## the keyword 'command_line' are not run until after the root filesystem

> ## is mounted. This is done to avoid running blocks twice. If you need

> ## to run hdparm to set parameters for your root disk, please use the

> ## standard format.

>

> #Samples follow:

> #First three are good for devfs systems, fourth one for systems that do

> #not use devfs. The fifth example uses straight hdparm command line

> #syntax. Any of the blocks that use command line syntax must begin with

> #the keyword 'command_line', and no attempt is made to validate syntax.

> #It is provided for those more comfortable with hdparm syntax.

>

> #/dev/discs/disc0/disc {

> # mult_sect_io = 16

> # write_cache = off

> # spindown_time = 240

> #}

>

> #/dev/discs/disc1/disc {

> # mult_sect_io = 32

> # spindown_time = 36

> # write_cache = off

> #}

>

> #/dev/cdroms/cdrom0 {

> # dma = on

> # interrupt_unmask = on

> # io32_support = 0

> #}

>

> #/dev/hda {

> # mult_sect_io = 16

> # write_cache = off

> # dma = on

> #}

>

> /dev/sdb {

> apm = 64

> spindown_time = 5

> }

>

> root@Silberkiste:~# hdparm -I /dev/sdb|grep level

> Advanced power management level: 254

> root@Silberkiste:~# /etc/init.d/hdparm restart

> [ ok ] Restarting hdparm (via systemctl): hdparm.service.

> root@Silberkiste:~# hdparm -I /dev/sdb|grep level

> Advanced power management level: 64

> root@Silberkiste:~#

>

>

> Any insight, why I need the /etc/init.d/hdparm restart is very welcome.

>

> Thanks

> Rainer

>

>

 

--

Rainer Dorsch

http://bokomoko.de/


Reply to: