#!/usr/bin/perl use strict; use warnings; my $rsyncbin = "/usr/bin/rsync"; my $backupdir = "/var/backups/server/incremental"; my @backdirs = qw(/etc/ /root/ /var/www/ /home/); # dir on root of fs / my @incdirs = qw(etc root www home); # dirs in /var/backups/server $ENV{PATH} = "/usr/local/sbin:/usr/bin"; if (! defined($ARGV[0]) ) { &normal_run(); } elsif ($ARGV[0] eq '--first_run') { &first_run(); } sub normal_run() { } sub first_run() { my $i = 0; foreach my $incdir (@incdirs) { system ("$rsyncbin -aHpE $backdirs[$i] $backupdir/$incdir/") or die "Can't run rsync $!"; $i++; } }