equal
deleted
inserted
replaced
9 use File::Spec::Functions; |
9 use File::Spec::Functions; |
10 use Data::Dumper; |
10 use Data::Dumper; |
11 use File::Find; |
11 use File::Find; |
12 use Carp; |
12 use Carp; |
13 use Pod::Usage; |
13 use Pod::Usage; |
|
14 use Const::Fast; |
14 |
15 |
15 our $VERSION = '0.0.2'; |
16 our $VERSION = '0.0.2'; |
|
17 |
|
18 const my $NAME => 'AMANDA-CLIENT'; |
|
19 const my $USER => 'backup'; |
|
20 const my $CFDIR => '/etc/amanda'; |
16 |
21 |
17 sub su; |
22 sub su; |
18 sub find_tool; |
23 sub find_tool; |
19 sub check_perms; |
24 sub check_perms; |
20 sub config_names; |
25 sub config_names; |
22 |
27 |
23 sub amchecks; |
28 sub amchecks; |
24 sub compare_lists; |
29 sub compare_lists; |
25 |
30 |
26 sub main; |
31 sub main; |
27 |
|
28 my $NAME = 'AMANDA-CLIENT'; |
|
29 |
32 |
30 sub ok; |
33 sub ok; |
31 sub warning; |
34 sub warning; |
32 sub critical; |
35 sub critical; |
33 sub unknown; |
36 sub unknown; |
49 'h|help' => sub { pod2usage(-verbose => 1, -exit => 0) }, |
52 'h|help' => sub { pod2usage(-verbose => 1, -exit => 0) }, |
50 'm|man' => sub { pod2usage(-verbose => 2, -exit => 0) }, |
53 'm|man' => sub { pod2usage(-verbose => 2, -exit => 0) }, |
51 'v|verbose' => \$opt_verbose, |
54 'v|verbose' => \$opt_verbose, |
52 ) or pod2usage; |
55 ) or pod2usage; |
53 |
56 |
54 if ($opt_verbose) { |
57 *::verbose = $opt_verbose ? sub { say '# ', @_ } : sub { }; |
55 *::verbose = sub { say '# ', @_ } |
|
56 } |
|
57 else { |
|
58 *::verbose = sub { } |
|
59 } |
|
60 |
58 |
61 # test needs to be run as root:* or as backup:backup |
59 # test needs to be run as root:* or as backup:backup |
62 my $USER = 'backup'; |
|
63 my $CFDIR = '/etc/amanda'; |
|
64 |
|
65 # change to backup if still root |
60 # change to backup if still root |
66 su $USER if $> == 0; |
61 su $USER if $> == 0; |
67 |
62 |
68 # amservice needs to be suid root, but executable |
63 # amservice needs to be suid root, but executable |
69 # by the backup user/group |
64 # by the backup user/group |