hbackup.pl
Publicado por Hatus Níwman 24/08/2006
[ Hits: 5.953 ]
Homepage: http://hatus.analyx.org
Faz um backup de arquivos cujos caminhos estão em um arquivo texto.
#!/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
Gerador de Senhas Aleatórias VERSÃO 2.0
Script de Analise do Syslog SNORT
Zend Framework application.ini vulnerability exploit
Nenhum comentário foi encontrado.
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
Ubunto não reconhece rede ethernet (0)
Secure boot, artigo interessante, nada técnico. (3)
Instalação dualboot Windows 11 e Debian 13 (11)









