Security Basics mailing list archives
Re: Re: Help writing a back up script
From: jason.gerfen () gmail com
Date: 26 Oct 2005 11:53:50 -0000
Here, hope this helps. You can modify it to suit your needs. You can replace the system calls I make to create the backup with the perl package to create tarballs etc. But this works for an easy backup solution. #!/usr/bin/perl # Backup script with FTP # Author: Jason Gerfen <jason.gerfen () gmail com> # Declare modules to use use strict; use Getopt::Long; use POSIX qw(strftime); use Net::FTP; # Globals my ( $host, $user, $pass, $dir, $gz ) = ''; # Grab our arguments GetOptions( "host=s" => \$host, "user=s" => \$user, "pass=s" => \$pass, "dir=s" => \$dir ); # Check for required arguments if( ( defined( $host ) ) && ( defined( $user ) ) && ( defined( $pass ) ) && ( defined( $dir ) ) ) { &FTPConn( $host, $user, $pass ); } else { &ShowSyntax; } sub GetDate { # Current date stamp my $date = strftime('%Y%m%d', localtime()); return $date; } sub CreateArchive { $date = &GetDate; $gz = system('tar -cf $dir-$date.tar $dir'); $gz = system('gzip -9 $dir.tar'); return $gz; } sub FTPConn { $gz = &CreateArchive( $dir ); my $ftp = Net::FTP->new( $host, Debug => 1 )or die "Could not open Connection to $host - $!"; $ftp->login( $user, $pass )or die "Could not login to $host: $@"; foreach my $bup (glob('$dir-$date.tar.gz')) { $ftp->binary; $ftp->put($bup) or die "Could not transfer files ", $ftp->message; } } sub ShowSyntax { print <<EOF; Backup Script ----------------- Creates gziped archive of specified directory and moves to remote FTP server Usage: ./backup.pl --host=<IPADDRESS> --user=<USERNAME> --pass=<PASSWORD> --dir=<DIRECTORY_TO_BACKUP> Revision: 0.30 <jason.gerfen\@gmail.com> Supported options are: host STRING Specify IP or Hostname of remote FTP server user STRING Specify the username to connect with pass STRING Provide the FTP connection password dir STRING Specify the directory to backup EOF exit; }
Current thread:
- Re: Help writing a back up script, (continued)
- Re: Help writing a back up script tsummers (Oct 24)
- Re: RE: Help writing a back up script [a] (Oct 24)
- RE: Help writing a back up script Danny Puckett (Oct 24)
- Re: Help writing a back up script David Weise (Oct 24)
- Re: Help writing a back up script Paul Wong (Oct 26)
- RE: Help writing a back up script Matthew Stainforth (Oct 24)
- RE: Help writing a back up script Fernando Panaggio (Oct 24)
- Re: RE: Help writing a back up script barcajax (Oct 24)
- RE: Help writing a back up script Jeff Gercken (Oct 24)
- RE: Help writing a back up script Paul Farrington (Oct 24)
- Re: Re: Help writing a back up script jason . gerfen (Oct 26)