+ Responder ao Tópico



  1. Olá, tenho um script de backup, via shel ele roda normalmente, porém via cron ele não roda, distro utilizada Fedora Core 3. Já dei todas as permissões possiveis para o script através do chmod 777 backup.sh.

    crontab -e
    * * * * * /backup/backup.sh

    Segue abaixo o script de backup diario (sobrescrevendo o backup da semana passada) Se alguém puder ajudar agradeço muito!

    #!/bin/bash
    DATA=`date +%d-%m-%y`
    cd /backup
    Semana=`date +%a`

    if [ "$Semana" == "Seg" ]
    then
    cd segundafeira
    mv /backup/segundafeira/* /backup/temp
    tar -cvzf backup-"$DATA".tar.gz /publico
    cd /backup/temp
    rm -rf /backup/temp/*
    echo "Backup de Segunda ABB Concluido"
    fi
    if [ "$Semana" == "Ter" ]
    then
    cd tercafeira
    mv /backup/tercafeira/* /backup/temp
    tar -cvzf backup-"$DATA".tar.gz /publico
    cd /backup/temp
    rm -rf /backup/temp/*
    echo "Backup de Terca ABB Concluido"
    fi
    if [ "$Semana" == "Qua" ]
    then
    cd quartafeira
    mv /backup/quartafeira/* /backup/temp
    tar -cvzf backup-"$DATA".tar.gz /publico
    cd /backup/temp
    rm -rf /backup/temp/*
    echo "Backup de Quarta ABB Concluido"
    fi
    if [ "$Semana" == "Qui" ]
    then
    cd quintafeira
    mv /backup/quintafeira/* /backup/temp
    tar -cvzf backup-"$DATA".tar.gz /publico
    cd /backup/temp
    rm -rf /backup/temp/*
    echo "Backup de Quinta ABB Concluido"
    fi
    if [ "$Semana" == "Sex" ]
    then
    cd sextafeira
    mv /backup/sextafeira/* /backup/temp
    tar -cvzf backup-"$DATA".tar.gz /publico
    cd /backup/temp
    rm -rf /backup/temp/*
    echo "Backup de Sexta ABB Concluido"
    fi


    Desde já agradeço

    Adamo Bento

  2. 2 coisas:

    1º Se voce executar esse script na mao ele vai rodar?
    2º No crontab vc colocou "* * * * *", isso significa que ele vai rodar pra sempre a cada minuto



  3. é, corrija o seu crontab conforme menciona o SDM. Depois verifique o funcionamento da variável "Semana".. aqui, o conteúdo fica Wed, Thu, ou seja, em inglês, e vc faz verificação em português.

    Também convém colocar o path considerando-o a partir do ponto de chamada do script. Por exemplo, aqui, como faço backup apenas do meu próprio $HOME, eu coloco:

    40 17 * * 1-5 shellscripts/backup.sh

    (acionar às 17:40, todos os meses, nos dias 1 a 5 (segunda a 6a feira). Já no script:
    hoje=$(date +%F)
    if [ $(date +%w) = 5 ]; then

    ou seja, eu confiro se é sexta-feira; em sendo, o backup fica diferente, é mais completo. Vc poderia experimentar:

    if [ $(date +%w) = 1 ]; then
    cd segundafeira
    [.. monte de coisas .. ]

    e repetir para 3, 4, 5..

    isso (talvez) torne as coisas mais fáceis

    ah, não esqueça: o seu backup.sh deve ficar como 0755 pra funcionar - embora não vejo pq não funcionasse como 0777 - apenas não é comum.

    bem.. divirta-se

  4. Eu já tive problema parecido com esse, eu acho que é por causa dos comandos que jogam alguma coisa para a saída padrão, como por exemplo o echo.

    Altere o script para que ele seja silencioso ou então altere alinha do cron para
    * * * * * /backup/backup.sh 2>&1 > /dev/null

    se vc quiser fazer log desse script troque o /dev/null por um arquivo de log seu.

    abraço



  5. Kra eu tive esse problema uma vez e resolvi chamando o shell tb no cron, assim:
    07 12 * * * /bin/sh /scripts/meu_script.sh






Tópicos Similares

  1. Script não roda na versão 6XX do ROS
    Por macewindu no fórum Redes
    Respostas: 5
    Último Post: 27-08-2013, 15:27
  2. script nao roda versao na 3 do mikrotik
    Por scnet no fórum Redes
    Respostas: 2
    Último Post: 02-05-2008, 00:10
  3. script que nao roda no cron - ajudem por favor
    Por luciano555 no fórum Servidores de Rede
    Respostas: 8
    Último Post: 26-06-2006, 15:46
  4. Script não roda no Cron
    Por durban no fórum Servidores de Rede
    Respostas: 23
    Último Post: 03-01-2005, 17:14
  5. Script nao roda como deveria
    Por jamba no fórum Linguagens de Programação
    Respostas: 1
    Último Post: 25-09-2003, 08:51

Visite: BR-Linux ·  VivaOLinux ·  Dicas-L