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

Re: Rsync + Crontab



Samuel,

Só deixo uma sugestão adicional para simplificar o seu trabalho nas
futuras necessidades de transporte de chaves digitais.

Ao invés destes dois comandos:

# cat ~/.ssh/id_dsa.pub | ssh root@maquina_remota 'cat - >>
~/.ssh/authorized_keys'
# cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

Use apenas este:

# ssh-copy-id root@maquina_remota

No mais, parabéns pelo êxito.

Welington Rodrigues Braga
--------------
Web: http://www.welrbraga.eti.br
MSN: welrbraga[*]msn·com
Gtalk: welrbraga[*]gmail·com
Yahoo / Skype:  welrbraga
PGP Key: 0x6C7654EB
Linux User #253605

"Em tudo somos atribulados, porém não angustiados; perplexos, porém
não desanimados; perseguidos, porém não desamparados; abatidos, porém
não destruídos;" - 2Co 4:8,9


Em 28 de junho de 2011 09:31, Rafael No <rafael.saxon@gmail.com> escreveu:
>
> Caros colegas da lista agradeço a ajuda de todos, e felizmente consegui solucionar o meu contratempo, passarei a vocês oque foi feito:
>
> Primeiro como nossa colega Camila disse, eu deveria fazer um teste com o script manualmente para ver se eu conseguia fazer a sincronização e realmente este teste solicitou senha, chegando a conclusão de que as chaves geradas no ssh estavam erradas então as gerei novamente da seguinte forma:
>
> # ssh-keygen -t dsa -f ~/.ssh/id_dsa
>
> # cat ~/.ssh/id_dsa.pub | ssh root@maquina_remota 'cat - >> ~/.ssh/authorized_keys'
>
> # cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
>
> Feito isso alterei o script que havia criado colocando a nova informação nele:
>
> #!/bin/bash
>
> INICIO=`date +%d/%m/%Y-%H:%M:%S`
> LOG=/home/usuario/log/`date +%Y-%m-%d`_rsync-log.txt
>
> echo " " >> $LOG
> echo " " >> $LOG
> echo "| ------ ------ ------ ------ ------ ------ -----------"  >> $LOG
> echo "  Sincronizacao iniciada em $INICIO" >> $LOG
>
> rsync -Cravzp root@servidorA:/media/pasta/ /media/pasta >> $LOG
> FINAL=`date +%d/%m/%Y-%H:%M:%S`
>
> echo "  Sincronizacao Finalizada em $FINAL" >> $LOG
> echo "| ------ ------ ------ ------ ------ ------ -----------"  >> $LOG
> echo " " >> $LOG
> echo " " >> $LOG
>
> para ter certeza desta vez fiz um teste manual:
>
> #sh ./rsync.sh
>
> Certo funcionou correctamente então fui ao grande final que era configurar o crontab par a que o mesmo passasse a fazer a sincronização diariamente e no determinado horário estabelecido desta forma fiz o seguinte:
>
> #nano /etc/crontab
>
> Arquivo:
> # /etc/crontab: system-wide crontab
> # Unlike any other crontab you don't have to run the `crontab'
> # command to install the new version when you edit this file
> # and files in /etc/cron.d. These files also have username fields,
> # that none of the other crontabs do.
>
> SHELL=/bin/sh
> PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/
>
> sbin:/usr/bin
>
> # m h dom mon dow user    command
> 17 *    * * *    root    cd / && run-parts --report /etc/cron.hourly
> 25 6    * * *    root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
> 47 6    * * 7    root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
> 52 6    1 * *    root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
> #
>
> 10 15  * * *     root     sh /home/usuario/rsync.sh
> #
> Feito isso tudo funcionou correctamente, espero que com minha duvida outras pessoas possam se beneficiar também.
> Mais uma vez agradeço a ajuda de todos.
> tenha uma boa semana.
>
>
>
> Em 21 de junho de 2011 16:41, Rafael No <rafael.saxon@gmail.com> escreveu:
>>
>> Boa tarde caros amigos da lista,
>> primeiramente venho agradecer a todos pela ajuda.
>> Então vamos la.
>> 1- Samuka Smk:
>> Rodei o comando via shell e funcionou normalmente.
>> Com relação a edição do arquivo /etc/rsyncd.conf, não consegui localizar na pasta etc. Eu deveria criar-lo ou este arquivo deveria ser criado por padrão com a instalação do rsync?
>> Com relação a rodar este script na mão eu consigo jogando o comando:
>> #sh ./rsync.sh
>> OBS: Ao executar o arquivo o mesmo solicita senha, mais executa a syncronização dos arquivos.
>> 2- Welington Rodrigues Braga
>> Conforme me foi solicitado alterei a configuração do me /etc/crontab para:
>> # /etc/crontab: system-wide crontab
>> # Unlike any other crontab you don't have to run the `crontab'
>> # command to install the new version when you edit this file
>> # and files in /etc/cron.d. These files also have username fields,
>> # that none of the other crontabs do.
>> SHELL=/bin/sh
>> PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
>> # m h dom mon dow user command
>> 17 * * * * root    cd / && run-parts --report /etc/cron.hourly
>> 25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
>> 47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
>> 52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
>> #
>> 10 15 * * *     root    /home/rafael/rsync.sh
>> #
>> depois rodei o comando:
>> #crontab -l (e me apareceu o seguinte resultado)
>> crontab -l
>> + crontab -l
>> no crontab for root
>> 3- Camila
>> Oi Camila, apesar de Raphael com ph ser elegante o meu é apenas com o comum "f" Rafael. Mais vamos ao que interessa.
>> Rodei o script manualmente e o mesmo funcionou corretamente, porem ele solicitou a senha para poder fazer o syncronismo, isso indica que as chaves podes estar em pastas erradas.
>> Após criar as chaves qual seria o diretório que eu deveria colocar-las, pois caso eu mude a chave do servidor B, e altere o arquivo rsync.sh o mesmo funciona mais solicita senha.
>> Mas uma vez agredeço a ajuda de todos.
>>
>> Em 19 de junho de 2011 12:38, camila <camila@tecnocubo.com.br> escreveu:
>>>
>>> oi Raphael, amigos da lista,
>>>
>>> Deixa eu fazer uma perguntinha básica pra ver se eu entendi:
>>> Depois que você colocou as chaves de ssh nas pastas corretas, fez mas um rsync pra ver se tudo foi sem problemas?
>>> PQ.. se o rsync continuar pedindo senha, o scrip que você fez vai parar!!
>>>
>>> essa cópia das chaves do ssh é justamente para evitar esse pedido de senha...
>>>
>>>
>>> --
>>> []s
>>> Camila Yamamoto
>>> e-mail / msn = camila@TecnoCUBO.com.br
>>>
>>> http://www.TecnoCUBO.com.br - Testamos e Separamos tudo, você só escolhe.
>>>
>>>
>>>
>>>
>>>
>>> On Fri, 17 Jun 2011 15:37:47 -0300
>>>  Rafael No <rafael.saxon@gmail.com> wrote:
>>> > Boa tarde galera da lista, gostaria de uma ajuda, com relação a um
>>> >servidor
>>> > de backup que estou desenvolvendo, a situação é a seguinte:
>>> > 1- instalei o rsync nas maquinas A e B, lembrando que a B é o
>>> >servidor de
>>> > backup e a A é o servidor de arquivos.
>>> > Após ter instalado fiz um teste e ocorreu tudo certo, consegui fazer
>>> >o
>>> > backup dos arquivos, sem nenhum problema.
>>> >
>>> > 2- Instalei o openssh-server (em ambos servidores A e B) e criei uma
>>> >chave
>>> > sem senha no servidor B, em seguida coloquei uma copia desta chave
>>> > na pasta
>>> > "/root/.ssh" no servidor A.
>>> >
>>> > 3- Criei um script da seguinte forma:
>>> >
>>> > #!/bin/bash
>>> >
>>> > INICIO=`date +%d/%m/%Y-%H:%M:%S`
>>> > LOG=/home/usuario/log/`date +%Y-%m-%d`_rsync-log.txt
>>> >
>>> > echo " " >> $LOG
>>> > echo " " >> $LOG
>>> > echo "| ------ ------ ------ ------ ------ ------ -----------"  >>
>>> >$LOG
>>> > echo "  Sincronizacao iniciada em $INICIO" >> $LOG
>>> >
>>> > rsync -Cravzp -e "ssh -i /home/usuario/rsync.key"
>>> >root@servidorA:/media/pasta/
>>> > /media/pasta >> $LOG
>>> >FINAL=`date +%d/%m/%Y-%H:%M:%S`
>>> >
>>> > echo "  Sincronizacao Finalizada em $FINAL" >> $LOG
>>> > echo "| ------ ------ ------ ------ ------ ------ -----------"  >>
>>> >$LOG
>>> > echo " " >> $LOG
>>> > echo " " >> $LOG
>>> >
>>> > Após ter criado o arquivo o salvei com o nome.sh, da seguinte forma:
>>> > rsync.sh
>>> >
>>> > 4- Entrei no crontab e deixei o arquivo da seguinte forma.
>>> > # nano /etc/crontab
>>> >
>>> > Arquivo:
>>> > # /etc/crontab: system-wide crontab
>>> > # Unlike any other crontab you don't have to run the `crontab'
>>> > # command to install the new version when you edit this file
>>> > # and files in /etc/cron.d. These files also have username fields,
>>> > # that none of the other crontabs do.
>>> >
>>> > SHELL=/bin/sh
>>> > PATH=/usr/local/sbin:/usr/
>>> > local/bin:/sbin:/bin:/usr/sbin:/usr/bin
>>> >
>>> > # m h dom mon dow user    command
>>> > 17 *    * * *    root    cd / && run-parts --report /etc/cron.hourly
>>> > 25 6    * * *    root    test -x /usr/sbin/anacron || ( cd / &&
>>> >run-parts
>>> > --report /etc/cron.daily )
>>> > 47 6    * * 7    root    test -x /usr/sbin/anacron || ( cd / &&
>>> >run-parts
>>> > --report /etc/cron.weekly )
>>> > 52 6    1 * *    root    test -x /usr/sbin/anacron || ( cd / &&
>>> >run-parts
>>> > --report /etc/cron.monthly )
>>> > #
>>> > 10 15 * * *     root    /home/usuario/rsync.sh
>>> >
>>> > Posso alterar o horário mais nada muda o backup não inicia, gostaria
>>> >de
>>> > saber se alguém poderia me dar uma ajuda neste problema.
>>> > Desde já agradeço tenham um bom final de semana.
>>>
>>
>


Reply to: