Backup - Shell

1. Backup - Shell

Carlos Eduardo da Silva da Costa
cadussb

(usa Ubuntu)

Enviado em 06/07/2011 - 14:52h

Boa Tarde pessoal do Viva o Linux, tenho um Backup automático via crontab, que compacta uma pasta, e envia para um diretório diferente. Ex:

Pega o arquivo em : /home/backup e manda para /home/backup2

Minha dúvida é a seguinte, preciso que esse arquivo compactado pelo "tar" não seja substituído todos os dias, e sim que ele salve todos os dias com um nome diferente. Ex:

Dia 1 = ArquivoSalvo
Dia 2 = ArquivoSalvo01
Dia 3 = ArquivoSalvo02

Se puderem me ajudar, agradeço!


  


2. Re: Backup - Shell

Mauricio Souza Klein
Hebang

(usa Arch Linux)

Enviado em 06/07/2011 - 14:56h

Se entendi bem, seu problema eh a geracao de arquivos com o mesmo nome (no caso, no mesmo dia).

Uma solução seria acrescentar no nome do arquivo compactado gerado um valor que não se repita.
Um valor interessante seria o timestamp. Voce pode pegar o timestamp atual com o comando "date +%s"

Ficaria +- assim:
NOME_ARQUIVO="ArquivoSalvo$(date +%s)"

Dessa forma, nenhum arquivo tera o mesmo nome de outro (a não ser que faça dois backups ao mesmo tempo, mas imagino que isso não acontecerá :) )

Espero ter ajudado!


3. Re: Backup - Shell

Carlos Eduardo da Silva da Costa
cadussb

(usa Ubuntu)

Enviado em 06/07/2011 - 14:58h

Vou fazer os testes, e ver se funcionou, obrigado pela ajuda!


4. Re: Backup - Shell

Leandro Bernardo
leandro.bernardo

(usa Debian)

Enviado em 06/07/2011 - 15:05h

Segue a rotina de backup que utilizo :)

Fique a vontade para editar!

Abraços



#!/bin/bash
#
#Contato : leandro.uee@gmail.com

#Configuracoes do Script
#DIR_ORIG eh o diretorio a ser 'backupeado' e DIR_DEST é o
#diretorio destino e BKP_NAME eh o nome do arquivo

DIR_ORIG="/home/diretorio/Projetos/"
DIR_DEST="/home/backup/"
BKP_NAME=bk`date +%d-%m_%H%M`.tgz

#compactacao do diretorio de origem
tar -czpf ${DIR_DEST}${BKP_NAME} ${DIR_ORIG}

#resultado
echo "Backup realizado com sucesso"
echo "Diretorio: ${DIR_ORIG}"
echo "Destino: ${DIR_DEST}${BKP_NAME}"

#remove backup com 30 dias
find /home/backup/ -ctime +30 -exec rm -rf {} \;
exit 0







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts