Provided by: rex_1.6.0-1_all
NAME
Rex::Commands::Sysctl - Manipulate sysctl
DESCRIPTION
With this module you can set and get sysctl parameters. Version <= 1.0: All these functions will not be reported. All these functions are not idempotent.
SYNOPSIS
use Rex::Commands::Sysctl; my $data = sysctl "net.ipv4.tcp_keepalive_time"; sysctl "net.ipv4.tcp_keepalive_time" => 1800;
EXPORTED FUNCTIONS
sysctl($key [, $val [, %options]]) This function will read the sysctl key $key. If $val is given, then this function will set the sysctl key $key. task "tune", "server01", sub { if( sysctl("net.ipv4.ip_forward") == 0 ) { sysctl "net.ipv4.ip_forward" => 1; } }; If both $val and ensure option are used, the sysctl key is modified and the value may persist in /etc/sysctl.conf depending if ensure option is "present" or "absent". With ensure => "present", if the key already exists in the file, it will be updated to the new value. task "forwarding", "server01", sub { sysctl "net.ipv4.ip_forward" => 1, ensure => "present"; }