Запустить puppet exec если только файла не существует

Posted in Новости on 13 августа, 2013 by admin

exec { «mkdir_test» :
command => «/bin/mkdir /tmp/test»,
creates => «/tmp/test» }

Tags:

Делаем if для puppet по версии ОС

Posted in Новости on 13 августа, 2013 by admin

Puppet кроме системных переменных использует facter, в нем существует переменная, отдающая название ОС — lsbdistcodename

итак, пишем скрипт :

if $lsbdistcodename == "wheezy" {
exec { "echo":
command => "/bin/touch WHEEZY" }
}
if $lsbdistcodename == "squeeze" {
exec { "echo":
command => "/bin/touch SQUEEZE" }
}

Tags:

Монтируем zpool raidz массив

Posted in Новости on 7 августа, 2013 by admin

1. Сначала импортируем массив в систему

zpool import massive

2. А затем, если он уже не был смонтирован в /massive делаем так :

mount -t sfs massive /mnt

Tags: , ,

Параметры вызова скриптов пакетов deb

Posted in Новости on 26 июня, 2013 by admin

preinst — install, upgrade, abort-upgrade
postinst — configure, abort-upgrade, abort-remove, abort-deconfigure
prerm — remove, upgrade, faled-upgrade, deconfigure
postrm — remove, purge, upgrade, failed-upgrade, abort-install, abort-upgrade, disappear

Tags:

Возвращаем из subroutine массив с данными perl

Posted in Новости on 20 июня, 2013 by admin

Пример sub :

sub test {
my @arr = ("1", "2", "3", "4");
};

Чтобы вернуть массив, мы возвращаем ссылку на него :

sub test {
my @arr = ("1", "2", "3", "4");
reutrn \@arr;
};

Далее в скрипте присваиваем ссылку переменной :

my $ref = &test();

и разыменовываем ссылку на массив, тем самым получая содержимое массива :

my @arr_ref = @$ref;

Итоговая тестовый скрипт выглядит так :

#!/usr/bin/perl

use strict;
use warnings;

sub test { my @test = ("1", "2", "3", "4"); return \@test;};
my $ref = &test();
print "@$ref[1]"; # обращаемся к элементам массива напрямую из разыменованной ссылки

Также можно использовать операторы разадресования :

#!/usr/bin/perl

use strict;
use warnings;

sub test { my @test = ("1", "2", "3", "4"); return \@test;};
my @ref = @{&test()};
print "$ref[1]";

Tags: , ,