shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Script de Backup


From: Anderson - Listas
Subject: Re: [shell-script] Script de Backup
Date: Thu, 23 Oct 2008 11:50:05 -0200

Excelente as duas dicas. Realmente era o que eu estava precisando, obrigado
MrBits e Fabiano. Deixei, a principio as duas funcionalidades rodando no
script para ver a estética do log como ficará.

Para deixar documentado para futuras pesquisas de outras pessoas, estou
colando o código reformulado abaixo com algumas pequenas alterações, por
exemplo:

- Criar o diretório do backup antes de criar o arquivo de backup: por um
erro na ordem do código estava criando o arquivo antes do diretório, e como
o arquivo fica dentro do diretório, ele não tinha onde ser gravado.
- Tirei uma variável perdida que estava sobrando de uns testes anteriores.

Obrigado pela ajuda.

--- INICIO DO CODIGO ---

#!/bin/bash

###---          Script de Backup do Servidor de E-mail Lotus Notes
---###
###---          Criado por Anderson em 21/10/2008 Versao #1
---###
###---          Modificado em 23/10/2008 - Versao #2
---###

# Variaveis
DATA=`date +%d%m%Y`
TIME=`date +%H:%M:%S`
SRCDIR="/var/local/notesdata/"
BKPDIR="/var/local/notesdata/backup$DATA"
LOG="$BKPDIR/backup$DATA.log"

# Binarios Necessarios
TAR=`which tar`
BZIP2=`which bzip2`
FIND=`which find`
CHOWN=`which chown`
CHMOD=`which chmod`
MD5SUM=`which md5sum`

# Mostra os comandos do Script
set -x

# Se Nao Existir o Diretorio de Backup Cria Automaticamente
        if [ ! -d $BKPDIR ]; then
                mkdir -p $BKPDIR;
        fi

# Envia todas as saidas para o LOG
exec 1>> ${LOG} 2>&1

# Mensagem de Inicio no Log do Backup
        echo "Inicio do Backup em $DATA as $TIME de `hostname`"
        echo "Diretorio $BKPDIR Criado em $DATA as $TIME"

# Testa se Todos os Binarios Estao Instalados
        for bin in $TAR $BZIP2 $FIND $CHOWN $CHMOD $MD5SUM; do
                if [ ! -x $bin ]; then
                        echo "Binario $bin Nao instalado no Sistema";
                        exit 1;
                fi;
        done

# Cria o Backup
                echo "Enviando Conteudo de $SRCDIR para
$BKPDIR/$area.tar.bz2"
                tar -c -v -j -p -f $BKPDIR/backup`hostname`-$DATA.tar.bz2
-vv $SRCDIR

                # Gera md5sum do Arquivo de Backup
                        echo ""
                        echo "md5sum do arquivo de Backup"
                        $MD5SUM $BKPDIR/backup`hostname`-$DATA.tar.bz2

        # Reseta as permissões para o arquivo de backup gerado
                $FIND $BKPDIR -type d -exec $CHMOD 770 {} \;
                $FIND $BKPDIR -type f -exec $CHMOD 660 {} \;
                $CHOWN -R root:root $BKPDIR

# Mensagen de Fim no Log do Backup
        echo "###--- ---###"
        echo "Fim do Backup em $DATA as $TIME"
        echo ""

--- FIM DO CODIGO ---


2008/10/23 Fabiano Caixeta Duarte <address@hidden>

>   2008/10/23 Anderson - Listas <address@hidden<usuariolistas%40gmail.com>
> >
>
>
> > gostaria de gerar um log de tudo
> > que foi feito pelo script
>
> Além da excelente colaboração do MrBits, acrescento que você pode mostrar
> os
> comandos executados pelos script, se é que é isto que você quis dizer,
> incluindo o comando
>
> set -x
>
> no começo do script
>
> --
> Fabiano Caixeta Duarte
> Especialista em Redes de Computadores
> Linux User #195299
> Ribeirão Preto - SP
>


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]