#! /usr/bin/perl #this script is used to backup the dns files before modifiy
#also if there is any mistaken,you can restore the files
use strict;
use warnings;
use File::Copy::Recursive "dircopy";
use Switch;
#use Archive::Tar;
my $date = localtime();
my @datesplit=split(' ',$date);
my $datestring=join( '-',@datesplit);
my $srcdir = "/conf/";
my $destdir = "/opt/backup/";
my $tardir="/opt/tarbackup";
sub backup {
print "All files in $srcdir will backup to $destdir ... \n";
print "backup is successful ...\n" if dircopy($srcdir,$destdir) or die $! ;
}
sub restore {
print "All files in $destdir will restore to $srcdir ...\n";
print "restore is successful ...\n" if dircopy($destdir,$srcdir) or die $! ;
}
sub tar {
print "All files in $srcdir will be save to $srcdir ...\n";
print "tar and compress successful ...\n" unless system("/bin/tar -czvf $tardir/dnsbackup.`date '+%Y%m%d%H%M%S'`.tar.gz $srcdir");
print "DNS files are backuped in : "; system("echo \"$tardir/dnsbackup.`date '+%Y%m%d%H%M%S'`.tar.gz\"");
}
sub untar {
print "Restore the tar file : $ARGV[1] to $srcdir ...\n";
print "file restore successful ... \n " unless system("/bin/tar -zxvf $ARGV[1] -C / ");
}
sub usage{
print