Pequeno sistema de backup (Rsync + SAMBA + Tar + FTP)
Publicado por Sylvio Jollenbeck 13/09/2006
[ Hits: 11.036 ]
Homepage: www.hosannagroup.com.br
Explicação rápida sob sua forma de funcionamento: O script consiste em montar uma unidade compartilhada por um servidor/computador Windows utilizando o SAMBA, sincronizar os dados desta unidade montada com um diretório ou disco local (Unix/Linux) através do Rsync, compactação dos dados pela ferramenta Tar e, por fim, enviar esse arquivo compactado para um servidor FTP (precisa configurar o endereço IP, nome de acesso e senha - no final deste script). As funções de backup e formas de backup podem ser alteradas de acordo com as necessidades, esse script deve ser referenciado no agendador de tarefas (Crontab) para ser executado todos os dias em horários determinados pela empresa. Espero ter ajudado. Sylvio Carlos Jollenbeck <sylvio [-arroba-] sdrconsulting.com.br>
######## Script de Backup e Syncronismo ######## ########### SDR CONSULTING LTDA ################# ######## www.sdrconsulting.com.br ############### ########## FONE: (11) 4141 6258 ################# #!/bin/bash # 1 - Parte (Variaveis) # Configuracao das variaveis do script # ------------------------------------------------------------------------ equi=192.168.10.200 user="storage" pass="storage" # Ponto de Montagem vol="d" pto=/mnt dst=/backup/win2000 # Ponto de Backup bkp_loc=/backup/win2000 # Pasta a ser Backupeada bkp_dir=/storage/win2000 # Pasta onde sera gerado o Backup dados=`date "+bkp-"$vol"-%d-%m-%Y.tgz"` # Nome do Arquivo de Backup # Arquivos de Log's log_dir=/backup/log_win2000 # Pasta onde sera gerado o LOG log_okay_sync=`date "+rsync-"$vol"-okay-%d-%m-%Y.txt"` # Nome do Arquivo de LOG log_erro_sync=`date "+rsync-"$vol"-erro-%d-%m-%Y.txt"` # Nome do Arquivo de LOG log_okay_bkp=`date "+bak-okay-"$vol"-%d-%m-%Y.txt"` # Nome do Arquivo de LOG log_erro_bkp=`date "+bak-erro-"$vol"-%d-%m-%Y.txt"` # Nome do Arquivo de LOG # 2 - Parte (Montando o Volume a ser Backupeado) # ------------------------------------------------------------------------ echo "--------------------- Montando o Volume de Dados --------------------" echo "--------------------- Montando o Volume de Dados --------------------" >> $log_dir/$log_okay_sync echo "--------------------- Montando o Volume de Dados --------------------" >> $log_dir/$log_erro_sync echo "" >> $log_dir/$log_okay_sync echo "" >> $log_dir/$log_erro_sync echo "Montando o volume a ser sincronizado = " $vol >> $log_dir/$log_okay_sync echo "Montando o volume a ser sincronizado = " $vol >> $log_dir/$log_erro_sync echo "" >> $log_dir/$log_okay_sync echo "" >> $log_dir/$log_erro_sync date "+Volume de dados montados em %d-%m-%Y as %H:%M" >> $log_dir/$log_okay_sync date "+Volume de dados montados em %d-%m-%Y as %H:%M" >> $log_dir/$log_erro_sync echo "" >> $log_dir/$log_okay_sync echo "" >> $log_dir/$log_erro_sync mount -t smbfs -o username=$user,password=$pass //$equi/$vol $pto date "+Volume de dados montado com sucesso %d-%m-%Y as %H:%M" echo " ---------------------- Volume Montado ------------------------- " echo "Volume montado com sucesso = " $vol >> $log_dir/$log_okay_sync echo "Volume montado com sucesso = " $vol >> $log_dir/$log_erro_sync echo "-----------------------------------------------------------------" >> $log_dir/$log_okay_sync echo "-----------------------------------------------------------------" >> $log_dir/$log_erro_sync echo "" >> $log_dir/$log_okay_sync echo "" >> $log_dir/$log_erro_sync # 3 - Parte (Inciando o Sincronismo) # ------------------------------------------------------------------------ echo "---------------------- Iniciando o Sincronismo ----------------------" echo "---------------------- Iniciando o Sincronismo ----------------------" >> $log_dir/$log_okay_sync echo "---------------------- Iniciando o Sincronismo ----------------------" >> $log_dir/$log_erro_sync echo "" >> $log_dir/$log_okay_sync echo "" >> $log_dir/$log_erro_sync date "+Sistema de Sincronismo iniciado em %d-%m-%Y as %H:%M" >> $log_dir/$log_okay_sync date "+Sistema de Sincronismo iniciado em %d-%m-%Y as %H:%M" >> $log_dir/$log_erro_sync echo "" >> $log_dir/$log_okay_sync echo "" >> $log_dir/$log_erro_sync echo "Sistema de Syncronismo iniciado:" >> $log_dir/$log_okay_sync echo "Sistema de Syncronismo iniciado:" >> $log_dir/$log_erro_sync rsync -avr $pto $dst 1>> $log_dir/$log_okay_sync 2>> $log_dir/$log_erro_sync date "+Sistema de sincronismo terminado em %d-%m-%Y as %H:%M" echo " ---------------------- Fim do Sincronismo ------------------------- " echo "Sincronismo concluido com sucesso - Por Favor consultar os arquivos de Logs" >> $log_dir/$log_okay_sync echo "Sincronismo concluido com sucesso - Por Favor consultar os arquivos de Logs" >> $log_dir/$log_erro_sync echo "-----------------------------------------------------------------" >> $log_dir/$log_okay_sync echo "-----------------------------------------------------------------" >> $log_dir/$log_erro_sync echo "" >> $log_dir/$log_okay_sync echo "" >> $log_dir/$log_erro_sync # 4 - Parte (Desmontar o Volume Backupeado) # ------------------------------------------------------------------------ echo "------------------- Desmontando o Volume de Dados --------------------" echo "------------------- Desmontando o Volume de Dados --------------------" >> $log_dir/$log_okay_sync echo "------------------- Desmontando o Volume de Dados --------------------" >> $log_dir/$log_erro_sync echo "" >> $log_dir/$log_okay_sync echo "" >> $log_dir/$log_erro_sync echo "Desmontando o volume ja sincronizado = " $vol >> $log_dir/$log_okay_sync echo "Desmontando o volume ja sincronizado = " $vol >> $log_dir/$log_erro_sync echo "" >> $log_dir/$log_okay_sync echo "" >> $log_dir/$log_erro_sync umount $pto date "+Sistema de sincronismo terminado em %d-%m-%Y as %H:%M" echo " ---------------------- Volume Desmontado ------------------------- " date "+Volume de dados desmontados em %d-%m-%Y as %H:%M" >> $log_dir/$log_okay_sync date "+Volume de dados desmontados em %d-%m-%Y as %H:%M" >> $log_dir/$log_erro_sync echo "" >> $log_dir/$log_okay_sync echo "" >> $log_dir/$log_erro_sync # 5 - Parte # ------------------------------------------------------------------------ echo "---------------------- Iniciando o Backup ----------------------" echo "---------------------- Iniciando o Backup ----------------------" >> $log_dir/$log_okay_bkp echo "---------------------- Iniciando o Backup ----------------------" >> $log_dir/$log_erro_bkp echo "" >> $log_dir/$log_okay_bkp echo "" >> $log_dir/$log_erro_bkp date "+Sistema de Backup iniciado em %d-%m-%Y as %H:%M" >> $log_dir/$log_okay_bkp date "+Sistema de Backup iniciado em %d-%m-%Y as %H:%M" >> $log_dir/$log_erro_bkp echo "" >> $log_dir/$log_okay_bkp echo "" >> $log_dir/$log_erro_bkp date "+Backup iniciado em %d-%m-%Y as %H:%M" >> $log_dir/$log_okay_bkp date "+Backup iniciado em %d-%m-%Y as %H:%M" >> $log_dir/$log_erro_bkp echo "" >> $log_dir/$log_okay_bkp echo "" >> $log_dir/$log_erro_bkp echo "---------------------- Executando o Backup ----------------------" >> $log_dir/$log_okay_bkp echo "---------------------- Executando o Backup ----------------------" >> $log_dir/$log_erro_bkp echo "-----------------------------------------------------------------" >> $log_dir/$log_okay_bkp echo "-----------------------------------------------------------------" >> $log_dir/$log_erro_bkp echo "" >> $log_dir/$log_okay_bkp echo "" >> $log_dir/$log_erro_bkp tar cvzf $bkp_dir/$dados $bkp_loc 1>> $log_dir/$log_okay_bkp 2>> $log_dir/$log_erro_bkp echo "" >> $log_dir/$log_okay_bkp echo "" >> $log_dir/$log_erro_bkp date "+Dados compactados - backup finalizado %d-%m-%Y as %H:%M" echo " ---------------------- Backup Finalizado ------------------------- " echo "---------------------- Finalizando o Backup ---------------------" >> $log_dir/$log_okay_bkp echo "---------------------- Finalizando o Backup ---------------------" >> $log_dir/$log_erro_bkp echo "-----------------------------------------------------------------" >> $log_dir/$log_okay_bkp echo "-----------------------------------------------------------------" >> $log_dir/$log_erro_bkp echo "" >> $log_dir/$log_okay_bkp echo "" >> $log_dir/$log_erro_bkp date "+Fim da copia dos arquivos em %d-%m-%Y as %H:%M. Enviando o Backup para servidor de FTP externo" >> $log_dir/$log_okay_bkp date "+Fim da copia dos arquivos em %d-%m-%Y as %H:%M. Enviando o Backup para servidor de FTP externo" >> $log_dir/$log_erro_bkp echo "" >> $log_dir/$log_okay_bkp echo "" >> $log_dir/$log_erro_bkp # 6 - Parte (Enviando os dados para o Servidor FTP) # ------------------------------------------------------------------------ echo "--------------------- Enviando o Backup FTP ---------------------" >> $log_dir/$log_okay_bkp echo "--------------------- Enviando o Backup FTP ---------------------" >> $log_dir/$log_erro_bkp echo "-----------------------------------------------------------------" >> $log_dir/$log_okay_bkp echo "-----------------------------------------------------------------" >> $log_dir/$log_erro_bkp echo "" >> $log_dir/$log_okay_bkp echo "" >> $log_dir/$log_erro_bkp ftp -n 192.168.10.69 <<EOF user storage backup11 binary cd / lcd $bkp_dir put $dados quit EOF date "+Envio do Backup para o Servidor de FTP terminado em %d-%m-%Y as %H:%M" >> $log_dir/$log_okay_bkp date "+Envio do Backup para o Servidor de FTP terminado em %d-%m-%Y as %H:%M" >> $log_dir/$log_erro_bkp echo "Backup concluido com sucesso - Por Favor consultar os arquivos de Logs" >> $log_dir/$log_okay_bkp echo "Backup concluido com sucesso - Por Favor consultar os arquivos de Logs" >> $log_dir/$log_erro_bkp echo " ----------------------- Fim do Backup ------------------------- " echo "-----------------------------------------------------------------" >> $log_dir/$log_okay_bkp echo "-----------------------------------------------------------------" >> $log_dir/$log_erro_bkp exit 0
Busca de arquivos nas ports FreeBSD
mPlayRecTv - assista e grave a programação da TV com MPlayer
IP Info - Pesquisa geográfica pelo endereço IP
Conversor de Dicionarios do Babylon
Maquina modesta - a vez dos navegadores ferrarem o usuario
Fscrypt: protegendo arquivos do seu usuário sem a lentidão padrão de criptograr o disco
Faça suas próprias atualizações de pacotes/programas no Void Linux e torne-se um Contribuidor
Como rodar o Folding@home no Linux
Criando um painel de controle (Dashboard) para seu servidor com o Homepage
Utilizando a Ferramenta xcheckrestart no Void Linux
Pisando no acelerador do Linux Mint: Kernel XanMod, zRAM e Ajustes de Swap
Como compilar kernel no Linux Mint
como usar o caja como cliente FTP no linux mint? (3)
O que você está ouvindo agora? [2] (247)
O que significa essa expressão? (3)
o que é esta mensagem? relatorios do sistema (8)
VMWare Player não conecta na rede nem consigo intercambiar arquivos (3)









