[Ubuntu-BR] Alguem conhece algum programa de backup que comprima arquivos individualmente mantendo a estrutura original de diretorios ?
Felipe Tanus
wallacethescot em gmail.com
Sexta Agosto 14 16:20:01 UTC 2009
Oi,
só lembrando que dependendo do caso, você vai preferir usar um bácula da
vida, ou para logs um logrotate.
[]'s
2009/8/14 hamacker <sirhamacker em gmail.com>
> Para quem tiver interesse, colei um exemplo de script em :
> http://pastebin.com/f2df68d8d
>
> Para torna-lo um executável em sua maquina :
> chmod a+x /local/do/script.sh
>
> Para executar :
> /local/do/script.sh
>
> []'s a todos.
>
> 2009/8/13 Sharkman BR <sharkman_br em hotmail.com>:
> >
> > Bom trabalho, amigo!
> > Mto legal sua iniciativa! Ajudará mta gente!
> > Obrigado!
> >
> >> Date: Thu, 13 Aug 2009 17:08:09 -0300
> >> From: sirhamacker em gmail.com
> >> To: ubuntu-br em lists.ubuntu.com
> >> Subject: Re: [Ubuntu-BR] Alguem conhece algum programa de backup que
> comprima arquivos individualmente mantendo a estrutura original de
> diretorios ?
> >>
> >> Respondendo a mim mesmo, criei uma funcao em bash script para realizar
> >> essa operação, se alguem tiver interesse é só copiar para seu script :
> >> function do_copy() {
> >> # copia uma pasta de um local de origem
> >> # para um local de destino
> >> # Porem faz a compactacao para o destino se a extensao nao for a do
> >> tipo ja compactada
> >> copiar_de_origem="$1"
> >> copiar_para_destino="$2"
> >> RESULT_VALUE="OK"
> >> LISTA_NAO_COMPACTAR=".7z .ace .ain .alz .apz .ar .arc .ari .arj .ark
> >> .axx .b64 .ba .bh .boo .bz .bz2 .bzip \
> >> .bzip2 .c00 .c01 .c02 .car .cbr .cbz .cp9 .cpgz .cpt .dar .dd .deb
> >> .dgc .dist .ecs .efw \
> >> .fdp .gca .gz .gzi .gzip .ha .hbc .hbc2 .hbe .hki .hki1 .hki2 .hki3
> >> .hpk .hyp .ice .ipg \
> >> .ipk .ish .j .jgz .jic .kgb .lbr .lemon .lha .lnx .lqr .lzh .lzm
> >> .lzma .lzo .lzx .md .mint \
> >> .mpkg .mzp .p7m .package .pae .pak .paq6 .paq7 .paq8 .par .par2 .pbi
> >> .pcv .pea .pf .pim .pit \
> >> .piz .pkg .pup .pup .puz .pwa .qda .r00 .r01 .r02 .r03 .rar .rev .rk
> >> .rnc .rpm .rte .rz .rzs \
> >> .s00 .s01 .s02 .s7z .sar .sdc .sdn .sea .sen .sfs .sfx .sh .shar
> >> .shk .shr .sit .sitx .spt \
> >> .sqx .sqz .tar .taz .tbz .tbz2 .tg .tgz .tlz .tz .uc2 .uha .vsi .wad
> >> .war .wot .xef .xez \
> >> .xpi .xx .y .yz .z .z01 .z02 .z03 .z04 .zap .zip .zipx .zix .zoo .zz
> >> .jpg .png .gif .cab .exe"
> >>
> >> LISTA_NAO_SALVAR=".tmp .$ .~ .swp"
> >>
> >>
> >> if [ "$copiar_de_origem" = "" ] ; then
> >> echo "Erro na copia de arquivos : O endereco de origem não foi
> informado."
> >> return
> >> fi
> >> if [ "$copiar_para_destino" = "" ] ; then
> >> echo "Erro na copia de arquivos : O endereco de destino não foi
> informado."
> >> return
> >> fi
> >> if ! [ -d "$copiar_para_destino" ] ; then
> >> mkdir -p "$copiar_para_destino"
> >> fi
> >>
> >> # lendo todos os arquivos na pasta de origem e jogando para dentro
> >> de um arquivo temporario
> >> temp=`mktemp`
> >> find $copiar_de_origem/ -type f >$temp
> >> while read ARQ_ATUAL ; do
> >> ARQ_ATUAL_PASTA=`dirname "$ARQ_ATUAL"`
> >> NOME_ARQUIVO=`basename "$ARQ_ATUAL"`
> >> NOME_ARQUIVO_EXT=${NOME_ARQUIVO#*.}
> >> NOVA_PASTA="$copiar_para_destino/$ARQ_ATUAL_PASTA"
> >> COMPACTAR_ARQUIVO="S"
> >> SALVAR_ARQUIVO="S"
> >> [[ "$LISTA_NAO_SALVAR" =~ "${NOME_ARQUIVO_EXT}" ]] &&
> SALVAR_ARQUIVO="N"
> >> ! [ -d "$NOVA_PASTA" ] && mkdir -p "$NOVA_PASTA"
> >> if [ -d "$NOVA_PASTA" ] && [ "$SALVAR_ARQUIVO" = "S" ] ; then
> >> [[ "$LISTA_NAO_COMPACTAR" =~ "${NOME_ARQUIVO_EXT}" ]] &&
> >> COMPACTAR_ARQUIVO="N"
> >> if [ "$COMPACTAR_ARQUIVO" = "S" ] ; then
> >> echo "[$NOME_ARQUIVO_EXT] transferindo [$ARQ_ATUAL] para
> >> [$NOVA_PASTA/$NOME_ARQUIVO.gz]"
> >> gzip -c "$ARQ_ATUAL" >"$NOVA_PASTA/$NOME_ARQUIVO.gz"
> >> else
> >> echo "[$NOME_ARQUIVO_EXT] transferindo [$ARQ_ATUAL] para
> >> [$NOVA_PASTA/$NOME_ARQUIVO]"
> >> cp "$ARQ_ATUAL" "$NOVA_PASTA/$NOME_ARQUIVO"
> >> fi
> >> else
> >> echo "Falha ao copiar o arquivo [$ARQ_ATUAL] para [$NOVA_PASTA]."
> >> RESULT_VALUE="FALHOU"
> >> fi
> >> done < $temp
> >> [ -f "$temp" ] && rm -f "$temp"
> >> }
> >>
> >>
> >> Testei agora a pouco e tá funcionando redondo, é só colocar no seu
> >> script a funcao acima e usa-la assim :
> >> do_copy "/home/fulano" "/media/usbdisk"
> >>
> >> Só preciso acrescentar mais tipos de arquivos que considero já
> >> compactados e lista de extensoes de arquivos temporarias para o backup
> >> ir mais rapido. Afinal não faz muito sentido compactar um jpg/zip/rar
> >> e nem jogar para o backup aqueles horrendos .$$$
> >>
> >> []'s a todos.
> >>
> >>
> >> 2009/8/13 hamacker <sirhamacker em gmail.com>:
> >> > Olá pessoal,
> >> >
> >> > Estou procurando algum programa ao estilo rsync que recrie a estrutura
> >> > original porém com os arquivos individualmente, explico.
> >> >
> >> > Os programas como tar/gz, 7zip, rar, zip, etc... comprimem diretorios
> >> > inteiros depositando todos os diretórios dentro de um único pacote
> >> > .7z/zip/tar.
> >> > Eu gostaria de saber se há algum programa que apenas recrie os
> >> > diretórios e comprima apenas os arquivos que existem nele, ex:
> >> >
> >> > /home/fulano/teste.odt
> >> > /home/fulano/projetos/projeto-importante.dxf
> >> >
> >> > se tornaria na unidade de destino :
> >> > /home/fulano/teste.odt.gz
> >> > /home/fulano/projetos/projeto-importante.dxf.gz
> >> >
> >> > Eu gostaria de fazer isso para facilitar alguns obstaculos
> >> > operacionais que temos por aqui.
> >> > Eu venho estudando uma forma do rsync fazer isso, mas ainda não achei.
> >> >
> >> > Alguem conhece um método assim ?
> >> >
> >>
> >> --
> >> Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece
> >>
> >> Lista de discussão Ubuntu Brasil
> >> Histórico, descadastramento e outras opções:
> >> https://lists.ubuntu.com/mailman/listinfo/ubuntu-br
> >
> > _________________________________________________________________
> > Emoticons e Winks super diferentes para o Messenger. Baixe agora, é
> grátis!
> > http://specials.br.msn.com/ilovemessenger/pacotes.aspx
> > --
> > Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece
> >
> > Lista de discussão Ubuntu Brasil
> > Histórico, descadastramento e outras opções:
> > https://lists.ubuntu.com/mailman/listinfo/ubuntu-br
> >
>
> --
> Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece
>
> Lista de discussão Ubuntu Brasil
> Histórico, descadastramento e outras opções:
> https://lists.ubuntu.com/mailman/listinfo/ubuntu-br
>
--
Felipe de Oliveira Tanus
E-mail: fotanus em gmail.com
Blog: http://fotanus.blogspot.com/
Site: http://www.inf.ufrgs.br/~fotanus/
-----
Aperture Science:
We do what we must because we can
For the good of all of us
except for the ones who are dead
More information about the ubuntu-br
mailing list