Forge Home


hddtemp configuration module.


10,165 latest version

1.9 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 1.0.3 (latest)
  • 1.0.2
  • 1.0.1
released Nov 20th 2014

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'brentschler-hddtemp', '1.0.3'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add brentschler-hddtemp
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install brentschler-hddtemp --version 1.0.3

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.



brentschler/hddtemp — version 1.0.3 Nov 20th 2014


Build Status

Table of Contents

  1. Overview
  2. Compatability
  3. Dependencies
  4. Examples
  5. Parameters
  6. Limitations
  7. License
  8. Development


This Puppet module is designed to facilitate the installation and configuration of hddtemp. The primary scope includes installing the package on the system and populating the init script with the appropriate devices.

At this time only sd* devices are correctly autoconfigured. IDE devices are not supported and must be manually configured.

This module is best used with heira and the "virtual_%{::is_virtual}" directive in it hierarchy configuration so it may be applied to only physical machines.


Facter 1.7 or greater is required for this module to function.

It has been tested to work with puppet versions 3.0.x and greater.

It will work with puppet 2.7 but fails if ruby is >=2.0.0.

The module is known to work on the following distributions:

  • Centos 6.x
  • SLES 11
  • Fedora 18+


  • Facter 1.7 or greater (blockdevices is absent in older versions.)
  • puppetlabs/stdlib


With traditional puppet node configuration:

class { 'hddtemp':
  service_manage      => true,
  service_enable      => true,
  service_ensue       => 'running'
  package_ensue       => 'latest'
  monitored_drives    => 'sda,sdb'
  listen_addr         => ''
  listen_port         => '7634'

With heira:

  - hddtemp

hddtemp::service_manage: true
hddtemp::service_enable: true
hddtemp::service_ensure: 'running'
hddtemp::package_ensure: 'latest'
hddtemp::monitored_drives: 'sda,sdb'
hddtemp::listen_addr: ''
hddtemp::listen_port: '7634'


All Parameters are optional, if no drives are specified the module will add all /dev/sd* devices to the list to be monitored.

Variable Default Value Description
listen_addr localhost IP Address to listen on for incoming connections.
listen_port 7634 Port to listen on.
monitored_drives none This must be specified as a comma seperated string. 'sda,sdb,sdc'
use_syslog false Log temps to syslog periodically
syslog_interval 1800 1800 seconds (30 minutes) Time in seconds to log temps to syslog.


The module only looks for /dev/sd* devices, IDE evices may be added manually, if any remain in the wild I suggest an upgrade.

Due to the init script in use in SLES 11 and other distros multiple erb templates are required.

At this time automatic configuration makes no attempt to ignore USB devices and will add them as well. Some do present S.M.A.R.T. data and so are valid, but they would still be best ignored.


GPL v2


Please report issues or submit a pull request.

Bug fixers and thanks to: