Forge Home


Puppet module for sysctl


8,967 latest version

3.8 quality score

Version information

  • 2.0.19 (latest)
  • 2.0.18
  • 2.0.17
  • 2.0.16
  • 2.0.15
  • 2.0.14
  • 2.0.13
  • 2.0.12
  • 2.0.11
released Aug 12th 2016
This module has been deprecated by its author since Oct 28th 2019.

The reason given was: No longer maintained

The author has suggested herculesteam-augeasproviders_sysctl as its replacement.

Start using this module


example42/sysctl — version 2.0.19 Aug 12th 2016

Deprecation notice

This module was designed for Puppet versions 2 and 3. It should work also on Puppet 4 but doesn't use any of its features.

The current Puppet 3 compatible codebase is no longer actively maintained by example42.

Still, Pull Requests that fix bugs or introduce backwards compatible features will be accepted.

Puppet module: sysctl

This is a Puppet module for sysctl It provides only package installation and file configuration.

Based on Example42 layouts by Alessandro Franceschi / Lab42

Sysctl type and sysyctl::value define have been copied from Duritong's puppet-sysctl

Official site:

Official git repository:

Released under the terms of Apache 2 License.

This module requires the presence of Example42 Puppi module in your modulepath.


You can decide to manage sysctl with 2 alternative methods:

  • Manage the /etc/sysctl.conf file (and /etc/sysctl.d directory) with the (Example42 standard) source and termplate parameters
  • Manage single sysctl entries with the sysctl::value define
  • Use custom sources for /etc/sysctl.conf

      class { 'sysctl':
        source => [ "puppet:///modules/example42/sysctl/sysctl.conf-${hostname}" , "puppet:///modules/example42/sysctl/sysctl.conf" ], 
  • Use custom source directory for the content of /etc/sysctl.d/

      class { 'sysctl':
        source_dir       => 'puppet:///modules/example42/sysctl/conf/',
        source_dir_purge => false, # Set to true to purge any existing file not present in $source_dir
  • Use custom template for /etc/sysctl.conf . Note that template and source arguments are alternative.

      class { 'sysctl':
        template => 'example42/sysctl/sysctl.conf.erb',
  • Manage atomically single sysctl entries (alternative to the source and template options):

      sysctl::value { "vm.nr_hugepages": value => "1583"}
  • Automatically include a custom subclass

      class { 'sysctl':
        my_class => 'example42::my_sysctl',

Build Status