hbackup.pl

Publicado por Hatus Níwman 24/08/2006

[ Hits: 5.645 ]

Homepage: http://hatus.analyx.org

Download hbackup.pl




Faz um backup de arquivos cujos caminhos estão em um arquivo texto.

  



Esconder código-fonte

#!/usr/bin/perl
# backup-0.1.pl
# 2006-05-17 v0.1
#
# Autor: Hatus Niwman
# Email: hatus (a) yahoo com br
# Site: http://xhatus.cjb.net
#
# Faz o backup de arquivos listados
# no arquivo $LISTA
#
# OBS: colocar endereço completo do arquivo
# a ser salvo na lista.
# Ex.: /root/doc/prog/teste.txt

use strict;

# arquivo onde contem os endereços do arquivo a ser salvo
my $LISTA = "/root/lista-backup.dat";

my($opt,$endereco,$conf);

# configurando a data do backup
my %mes=(Jan => '01',Feb => '02',Mar => '03',Apr => '04',May => '05',
Jun => '06',Jul => '07',Ago => '08',Sep => '09',Oct => '10',
Nov => '11',Dec => '12');
my @time = split(" ",localtime());
my $data = "$time[4]$mes{$time[1]}$time[2]";

my $nome = "backup-$data";   ## dir de backup
my $dir_save = "/tmp";      ## dir onde será salvo o dir de backup
my $dir ="$dir_save/$nome";   ## dir onde contem os arquivos para salvar

print "Fazer backup dos arquivos? [y/n]: ";
chomp($conf = <STDIN>);
if ($conf=~/^[nN]$/){
   print "\nBackup cancelado!\n";
   exit(0);
} else { print "\n" };

if ($< != 0){
   print "Somente root tem permissão para fazer o backup.\n";
   exit(0);
}

# cria $dir se nao existir
if (! -d $dir) { system("mkdir $dir"); }

#verifica se a $LISTA existe
if (! -f $LISTA) {
   print "$LISTA não existe!\n";
   exit(0);
}


open(ARQ,"<$LISTA") or die "Erro!!!";
while(my $endereco = <ARQ>){
   chop($endereco);
   if(-d "$endereco"){ $opt = "-R"; }
   else { $opt=""; }
   if($endereco=~/^\//g){
      print "Salvando $endereco\n";
      system("/bin/cp $opt $endereco $dir");
   } else {
      print "ERRO: Nao foi possível salvar $endereco\n";
   }
}
close(ARQ);

print "\nCompactando $dir ...\n";
system("cd $dir_save && /bin/tar cfz $nome.tar.gz $nome");
print "\nBackup salvo em $dir.tar.gz\n";
print "Backup concluído!\n";

#EOF

Scripts recomendados

Port Scan

Backdoor em perl

script para encontrar verificar a vulnera bilidade RFI

Zend Framework application.ini vulnerability exploit

brute_basic


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts