Pequeno sistema de backup (Rsync + SAMBA + Tar + FTP)
Publicado por Sylvio Jollenbeck 13/09/2006
[ Hits: 10.719 ]
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
Checar tamanho do Cache do Squid e limpar
POSTFIX AUTOMÁTICO COM MYSQL E IPTABLES - SCRIPT DO IPTABLES
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Título: Descobrindo o IP externo da VPN no Linux
Armazenando a senha de sua carteira Bitcoin de forma segura no Linux
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Máquinas Virtuais com IP estático acessando Internet no Virtualbox
Instalar o Microsoft Edge no Slackware 15
Instalando Brave Browser no Linux Mint 22
vídeo pra quem quer saber como funciona Proteção de Memória:
Primeira vez utilizando Linux Ubuntu 22.04 e já tenho problemas… (4)
warsaw parou de funcionar após atualização do sistema (solução) (1)
Separar trafego da VPN da VPS (0)
Formatando cartão de memoria que nao formata[AJUDA] (17)
Desde que seja DDR3, posso colocar qualquer memória? [RESOLVIDO] (6)