+ Responder ao Tópico



  1. #1

    Arrow Ajuda em script de bkp em servidor de arquivos...

    Oi Pessoal tudo bom, sou novo aqui no forum nao sei se esto postando no lugar correta caso nao me desculpe...
    esto com um script de Bkp aqui no meu trabalho e quero ver com vcs se ele esta correto ele faz o bkp da pasta /home e compacta por usuario e procura arquivos .mp3 .wma .wmv para que estas extençoes nao vao para o bkp so que tive que criar uma pasta .sem_bkp para que este arquivos sejao movidos ou gerado um arquivo .txt do arquivos .sem_bkp so que da erro na linha 94 do script e tambem me diz que nao encontro a pasta .sem_bkp ja criei ela em todos as pasta dos usuario para que os arquivos que nao vao para o bkp estejao la...vo deixar ele aqui para vcs darem uma olhada e ver onde eu errei nele um abraço a todos e obrigado.


    #----------------------------------------------------------------------------
    #
    # script para backup do server
    #
    #----------------------------------------------------------------------------
    # Definicao de Parametros
    #----------------------------------------------------------------------------
    # Origem dos Arquivos para Backup
    origem_dados="/home/arquivos/dados"
    origem_home="/home"
    # Destino do Backup
    destino_dados="/backups/dados"
    destino_home="/backups/usuarios"
    #destino_.sem_bkp="/backups/.sem_bkp"
    # Usuarios
    users=" administrativo comercial design desenvolvimento informatica gestao "
    #----------------------------------------------------------------------------
    # definicao de funcoes
    #----------------------------------------------------------------------------
    # Define dia da semana
    clear
    if [ $(date +%w) = "1" ] ; then
    dias=segunda
    fi

    if [ $(date +%w) = "2" ] ; then
    dias=terca
    fi

    if [ $(date +%w) = "3" ] ; then
    dias=quarta
    fi

    if [ $(date +%w) = "4" ] ; then
    dias=quinta
    fi

    if [ $(date +%w) = "5" ] ; then
    dias=sexta
    fi

    if [ $(date +%w) = "6" ] ; then
    dias=sabado
    fi

    if [ $(date +%w) = "7" ] ; then
    dias=domingo
    fi

    # Procura arquivos .mp3 e coloca os nomes no arquivo mp3
    procura_mp3()
    {
    find -name *.mp3 -printf "%f\n" > .mp31
    find -name *.mP3 -printf "%f\n" > .mp32
    find -name *.Mp3 -printf "%f\n" > .mp33
    find -name *.MP3 -printf "%f\n" > .mp34
    cat .mp31 .mp32 .mp33 .mp34 > .mp3
    rm .mp31 .mp32 .mp33 .mp34 -rf;
    }
    # Procura arquivos .wma e coloca os nomes no arquivo wma
    procura_wma()
    {
    find -name *.wma -printf "%f\n" > .wma1
    find -name *.wmA -printf "%f\n" > .wma2
    find -name *.wMa -printf "%f\n" > .wma3
    find -name *.wMA -printf "%f\n" > .wma4
    find -name *.Wma -printf "%f\n" > .wma5
    find -name *.WmA -printf "%f\n" > .wma6
    find -name *.WMa -printf "%f\n" > .wma7
    find -name *.WMA -printf "%f\n" > .wma8
    cat .wma1 .wma2 .wma3 .wma4 .wma5 .wma6 .wma7 .wma8 > .wma
    rm .wma1 .wma2 .wma3 .wma4 .wma5 .wma6 .wma7 .wma8 -rf;
    }
    # Procura arquivos .wmv e coloca os nomes no arquivo wmv
    procura_wmv()
    {
    find -name *.wmv -printf "%f\n" > .wmv1
    find -name *.wmV -printf "%f\n" > .wmv2
    find -name *.wMv -printf "%f\n" > .wmv3
    find -name *.wMV -printf "%f\n" > .wmv4
    find -name *.Wmv -printf "%f\n" > .wmv5
    find -name *.WmV -printf "%f\n" > .wmv6
    find -name *.WMv -printf "%f\n" > .wmv7
    find -name *.WMV -printf "%f\n" > .wmv8
    cat .wmv1 .wmv2 .wmv3 .wmv4 .wmv5 .wmv6 .wmv7 .wmv8 > .wmv
    rm .wmv1 .wmv2 .wmv3 .wmv4 .wmv5 .wmv6 .wmv7 .wmv8 -rf;
    }
    # Chama todos os arquivos de procura e coloca a lista no arq. .sem_bkp para o tar ignorar esses arquivos
    procura()
    {
    procura_mp3
    procura_wma
    procura_wmv
    touch .mp3 .wma .wmv > /backups/.sem_bkp/.sem_bkp.txt
    rm .mp3 .wma .wmv -rf;
    }

    # Faz o backup dos homes definidos dos usuários definidos em $users
    backup_home()
    {
    cd /home
    for i in $users; do
    cd $origem_home/$i
    procura
    tar czvf $destino_home/$dias/$i.tgz * .sem_bkp;
    done;
    }
    # Faz o backup dos arquivos de dados dos programas /home/dados
    backup_dados()
    {
    tar czvf $destino_dados/$dias.tgz $origem_dados;
    }
    # Faz o backup das configuracao do servidor
    backup_config()
    {
    if [ dias = "segunda" ] ; then
    tar czvf $destino_config/$dias.tgz /etc /root /home/arquivos/scripts;
    fi
    }
    #----------------------------------------------------------------------------
    # Chamando as funcoes para backup
    #----------------------------------------------------------------------------
    backup_dados
    echo Backup dados realizado com sucesso $(date +%D) $(date +%R) >> /home/arquivos/scripts/logs/backup_dados.log
    backup_home
    echo Backup usuarios realizado com sucesso $(date +%D) $(date +%R) >> /home/arquivos/scripts/logs/backup_home.log
    backup_config
    echo Backup config realizado com sucesso $(date +%D) $(date +%R) >> /home/arquivos/scripts/logs/backup_config.log
    #----------------------------------------------------------------------------
    Última edição por silver83; 19-09-2008 às 14:32.