Script de backup para cd-rw e outro local (pasta mapeada)

Publicado por Marcelo (última atualização em 17/10/2009)

[ Hits: 4.679 ]

Download backup.sh




Este script serve para criar backup de pastas inteiras, compactando os arquivos em um só, nomeando este com a data do backup, movendo para uma pasta (pode ser uma pasta mapeada na rede com NFS) e gravando em um cd-rw.

Pode-se especificar inclusive os tipos de arquivos que quer fazer backup. No script cada passo está comentado, facilitando muito o entendimento.

  



Esconder código-fonte

#!/bin/bash
############## PARÂMETROS PARA CONFIGURAR #######################
# Localização dos arquivos para backup
ARQUIVOS="/home/marcelo/Documentos/ANA"

# Tipo de arquivo: *.jpg, *.doc, .xls. etc... ou * para todos os arquivos
TIPO="*"

# Local onde será salvo o backup (outro computador)
BKP="/home/marcelo/Documentos/bkp"

# aqui defini uma variavel de data para compor o nome do arquivo
DATA=`date +%d-%m-%Y`

CDROM="/media/cdrom0"
############ FIM DOS PARÂMETROS PARA CONFIGURAR #################

vcd () {
               if mount | grep cdrom > /dev/null; then
                        umount /media/cdrom0
                        vcd
                else
                        backup
                fi

}

backup () {
                # aqui defini uma variavel de data para compor o nome do arquivo
                DATA=`date +%d-%m-%Y`

                # compacta os arquivos e nomeia o arquivo com a data atual
                cd $ARQUIVOS
                tar -jcvf backup-"$DATA".tar.bz2 $ARQUIVOS/$TIPO

                # grava em um arquivo a data e hora da última modificação de todos os arquivos
                ls -Rlh | awk {'print $6" "$7" "$8'} > modificados-por-data.inf

                # transforma o arquivo em iso para gravar no cd (instalar mkisofs)
                mkisofs -pad -l -r -J -v -V "bkp" -o backup.iso "$ARQUIVOS"/*.tar.bz2

                # move os arquivos para uma pasta mapeada da rede (nfs) (mapear pasta igual fizemos no servidor)
                mv backup-*.tar.bz2 modificados-por-data.inf $BKP/

                # apaga o cd RW
                # grava o arquivo no cd
                cdrecord dev=0,0,0 -blank=fast
                cdrecord -v -fs=16M dev=0,0,0 speed=10 -data backup.iso

                # exclui arquivos temporários
                rm -rf $ARQUIVOS/backup.iso
}

if [ -d $BKP ]; then
        vcd
else
        mkdir $BKP
        vcd
fi

Scripts recomendados

Informaçoes de rede com shell script

Lipando Squid

diminuir_fotos.bash

Script Admin PDC

Calculadora 5 funções


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts