Backup incremental com rsync
Publicado por Eduardo Antonio Marcial Marques (última atualização em 03/09/2018)
[ Hits: 10.605 ]
Homepage: www.valedolinux.com.br
Download 1533941815993117181198.jpg
O programa rsync é um utilitário de cópia muito utilizado para fazer backups, ele aceita diversos parâmetros como uso de chaves, manipulação de parâmetros, cópias diferenciais e incrementais.
Abaixo vou deixar um pequeno bashscripts de backup incremental.
Frisando que no backup incremental o local que recebe a cópia completa sempre fica atualizada e o que é mudado é adicionado na pasta de "incrementais".
Exemplo:
ANTES DO RSYNC
Origem:
/DADOS/word.doc 13 kb
Destino:
/BKPFULL/DADOS/word.doc 13 kb
DEPOIS DO RSYNC COM MUDANÇA NA ORIGEM NO DIA 01/01/2022
Origem:
/DADOS/word.doc 124 kb
Destino:
/BKPFULL/DADOS/word.doc 124kb
/BKP_INCR/01-01-2022/DADOS/word.doc 13 kb
#!/bin/bash
#
# www.valedolinux.com.br
# Autor: Eduardo Marcial
# Data: 2018
# Backup Incremental
#
##################################################################################
##################################################################################
# DECLARAÇÃO DE VARIÁVEIS
DATA=$(date +%F) #Carimbo de data aaaa-mm-dd
ORIGEM="/home/setores"
COMPLETO="/mnt_hdext/backup-incremental/FULL"
DESTINO="/mnt_hdext/backup-incremental/$DATA"
PASTLOG="/mnt_hdext/backup-incremental/log"
LOG="$PASTLOG/log-$DATA" #Log do backup
UUID_HD_USB=""
##################################################################################
# CHECA MONTAGEM DO HD EXTERNO
CHECK_MOUNTED=$(mount |grep -w \/mnt_hdext|tail -1|wc -l)
if [ "${CHECK_MOUNTED}" = "0" ]; then
mount /dev/sdb1 /mnt_hdext 2>> ${LOG}
if [ $? -gt 0 ]; then
echo -e "\n ERRO AO MONTAR HD-EXTERNO USB UUID="${UUID_HD_USB}"." >> $LOG
exit 1
else
echo -e "\n OK - HD-EXTERNO USB MONTADO COM SUCESSO" >> $LOG;
fi
fi
##################################################################################
# CRIA DIRETORIOS E ARQUIVOS
if [ ! -d ${DESTINO} ]; then
mkdir -p ${DESTINO}
fi
if [ ! -d ${COMPLETO} ]; then
mkdir -p ${COMPLETO}
fi
if [ ! -d ${PASTLOG} ]; then
mkdir -p ${PASTLOG}
fi
touch $LOG
##################################################################################
# Inicio de bkp
echo "Inicio de backup $(date)" >> $LOG
##################################################################################
# REALIZAR BKP
sudo rsync -azbvP --exclude='TEMP' --delete --backup-dir=$DESTINO $ORIGEM $COMPLETO 2>> $LOG
##################################################################################
# SE NÃO HOUVE ERRO NO BACKUP FAZ LIMPEZA - 60 DIAS
if [ "$?" -eq 0 ]; then
find $DESTINO -maxdepth 1 -mtime +60 -exec rm -rf {} \; 2>> $LOG
else
echo "Erro ao realizar backup incremental. $DATA" >> $LOG
fi
echo "Fim de backup $(date)"
Enviando e-mail localmente após o backup para monitoramento
Lisa - sistema de backup com rsync
Nenhum comentário foi encontrado.
XFCE - quase um Gnome ou Plasma mas muito mais leve
LXQT - funcional para máquinas pererecas e usuários menos exigentes
Instalação do K3s Single-Node com Rancher no Ubuntu 24.04
Usei o NotebookLM para Auditar Logs do Linux
Cinnamon seria a aposta acertada frente às outras interfaces gráficas mais populares?
[Resolvido] Sumiço de redes e micro quedas no iwd/iwgtk (Realtek rtw88)
Como Configurar DNS Reverso (PTR) em Ambientes Linux e Microsoft
Preparando o Ambiente para Administrar o Samba 4 a partir do Windows com RSAT
WiFi Seguro: EAP-TLS com FreeRADIUS e Active Directory (LDAP)
A diferença entre a fala de um Samuel e a fala de alguém que conhece o... (4)









