Backup Incremental - tar
Publicado por Rodrigo Sozza 14/06/2008
[ Hits: 15.744 ]
Homepage: http://softwarelivre.org/rsozza
Download backup_incremental.txt
Modelo de Backup Incremental que concatena os arquivos em um tar.
#!/bin/bash # # Identificação dos arquivos IDENTIFICA=Backup # Numero de dias do ciclo de backup DIAS=7 # E-mail do administrador ADMIN=admin@exemplo.com.br # A partir de onde ficarão os arquivos PREFIX=/backup # Onde os arquivos de backup e logs ficarão armazenados DIR_DESTINO=/backup/arquivos # Lista de arquivos a não serem backupeados EXCLUDE=$PREFIX/etc/exclude.list # Arquivos temporário do script TEMP=/tmp/.backup.$$ # Arquivos de controle do GNU/Tar INC=$PREFIX/etc/incremental.conf # Formato da data DATA=$(date +%d-%m-%Y-%a) # Arquivo com a lista de diretórios a serem backupeados LISTA=$(cat $PREFIX/etc/list.conf | grep ^\/ | sort | uniq) # Arquivos gerado pelo script para controle de incremento CONFIG=$PREFIX/etc/backup.conf VOLTA=0 if [ ! -e $CONFIG ] ; then touch $CONFIG NUMERO=1 else cp -f $CONFIG $CONFIG.bak LINHAS=$(cat $CONFIG | grep ^[0-9] | wc -l) [ $LINHAS -eq $((DIAS+1)) ] && VOLTA=1 FIRST=$(cat $CONFIG | grep ^[0-9]- | head -1) LAST=$(cat $CONFIG | grep ^[0-9]- | tail -1) OLD=$(echo $LAST | cut -f1 -d"-") OLD=${OLD:-0} BACKUP_OLD=$(echo $FIRST | cut -f1 -d"-") FILE_OLD=$(echo $FIRST | cut -f- -d"-") if [ $OLD -eq $DIAS ] ; then NUMERO=1 mv -f $INC $INC.bak else NUMERO=$((OLD+1)) fi fi DESTINO=$DIR_DESTINO/$IDENTIFICA-$NUMERO-$DATA SEND_MAIL () { sendmail $ADMIN << FIMEMAIL Subject: Backup CL $(date +%d-%m-%Y) Backup realizado no arquivo: $DESTINO.tar.gz FIMEMAIL } df -h > $DESTINO.log tar --totals --ignore-failed-read --exclude-from=$EXCLUDE -zcvg $INC -f $DESTINO.tar.gz $LISTA >> $DESTINO.log 2>&1 df -h >> $DESTINO.log SEND_MAIL $DESTINO.log echo $NUMERO-$DATA >> $CONFIG if [ $VOLTA -eq 1 ] ; then rm -f $DIR_DESTINO/$IDENTIFICA-$FILE_OLD.tar.gz rm -f $DIR_DESTINO/$IDENTIFICA-$FILE_OLD.log sed 1d $CONFIG > $TEMP mv -f $TEMP $CONFIG fi
POSTFIX AUTOMÁTICO COM MYSQL E IPTABLES - APAGA AS MSG <.APAGADAS> GERADAS PELO SCRIPT delete_all_u
Instalação do Cacti v0.8.7g + Plugins
Verificar atividade de serviços no Tomcat
Nenhum comentário foi encontrado.
Desktop Linux ganha fôlego enquanto distros refinam experiência e segurança
Wayland em alta, IA em debate e novos ventos para distros e devices
Qt 6.10 e Python 3.14 puxam o ritmo do software livre nesta quarta
Atualizações de Apps, Desktop e Kernel agitam o ecossistema Linux nesta terça-feira
Como mudar o nome de dispositivos Bluetooth via linha de comando
Adicionando o repositório backports no Debian 13 Trixie
Não tenho som no meu Kali linux (0)
Erro ao fazer remaster usando Penguin eggs (2)
Primeiras impressões do Debian 13 (25)
Meu Amigo não consegue entrar em meu mundo, via tailscale, hamachi e z... (1)