crontab

13. Re: crontab

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 07/05/2010 - 11:24h

C tá editando o crontab como?

# crontab -e

Ou:

# vim /etc/crontab


  


14. Re: crontab

Alvaro
aalves

(usa Ubuntu)

Enviado em 07/05/2010 - 11:25h

crontab -e


15. Re: crontab

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 07/05/2010 - 11:27h

Tente adicionar essa linha antes das regras do crontab:

PATH=/bin:/sbin:/usr/bin:/usr/sbin

E teste d novo.


16. Re: crontab

Alvaro
aalves

(usa Ubuntu)

Enviado em 07/05/2010 - 11:35h

a msm coisa, no historico.txt ele dz que apagou...porém não apaga e rodando manualmente funciona...


17. Re: crontab

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 07/05/2010 - 11:46h

Poxa, kra... vacilei em um lance. Acho q agora vai dar certo. Vou modificar a linha do comando d remover e colocar o seu script na íntegra aki:

#!/bin/bash
#Script para apagar o bckup mais antigo
timestamp=$(date +"%Y%m%d" )
bk1="vazio"
bk2="vazio"
bk1data=00000000
bk2data=00000000

#echo >> alvaro.txt "$timestamp-Script para apagar o backup mais antigo."
cd /bk_dotproject
for LINHA in $(ls -lt /bk_dotproject/bk_dotproject* | cut -c49-90); do
if [ "$bk1" = "vazio" ]; then
bk1=$LINHA
else
if [ "$bk2" = "vazio" ]; then
bk2=$LINHA
fi
fi
done

if [ "$bk2" = "vazio" ]; then
echo >> /bk_dotproject/historico.txt "Nao existem 2 arquivos de backup - $timestamp."
else
bk1data=$(ls -lt $bk1 | cut -c63-70)
bk2data=$(ls -lt $bk2 | cut -c63-70)
echo $bk1data
echo $bk2data

if [ $bk1data -lt $bk2data ]; then
echo >> /bk_dotproject/historico.txt "Apagando "$bk1" - Arquivo removido dia: $timestamp"
rm -f $bk1
else
echo >> /bk_dotproject/historico.txt "Apagando "$bk2" - Arquivo removido dia: $timestamp"
rm -f $bk2
fi

fi


18. Re: crontab

Alvaro
aalves

(usa Ubuntu)

Enviado em 07/05/2010 - 11:59h

olá amigo, rodei o seu script...e a msm coisa...manualmente funciona...mas pelo crontab ele não apaga o arquivo !!! muito estranho isso !!! já usei outras vezes o crontab e nunca tive esse problema....

Obrigado pela sua atenção ao tentar me ajudar....

Tenho que conseguir fazer isso funcionar....faz parte da meta da empresa que tenho que alcançar!!!


19. Re: crontab

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 07/05/2010 - 12:08h

Então coloque no cron a linha dessa forma:

16 09 * * * root /bk_dotproject/del_backup.sh


20. Re: crontab

Alvaro
aalves

(usa Ubuntu)

Enviado em 07/05/2010 - 12:35h

coloquei "root" como informou.... e o script nem rodou ....


21. Re: crontab

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 07/05/2010 - 17:53h

Tire o root então e acrescente nos comandos rm o parâmetro r, dessa forma:

rm -rf $bkp1

E veja se dá certo.


22. Re: crontab

Alvaro
aalves

(usa Ubuntu)

Enviado em 12/05/2010 - 09:53h

Olá, não pude responder antes pois estava fazendo outros serviços... mas ainda não deu certo, estou achando que no crontab ele não está "percebendo" que passei o caminho onde o arvuico .sh está salvo apra ser executado...


23. Re: crontab

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 12/05/2010 - 10:06h

Muito estranho. Eu já esgotei as minhas alternativas... foi mal.


24. Re: crontab

Alvaro
aalves

(usa Ubuntu)

Enviado em 17/05/2010 - 09:25h

Olá pessoal, alguém mais pode me ajudar... ????

segue o script e abixo o crontab - LEMBRANDO QUE AO RODAR MANUALMENTE ELE EXECUTA AS TAREFAS QUE DESEJO, OU SEJA, APAGA O ARQUIVO DE BACKUP MAIS ANTIGO, MAS AO AGENDAR NO CRON ELE NÃO APAGA O ARQUIVO E GERA A MENSAGEM DIZENDO QUE NÃO EXISTEM DOIS ARQUIVOS DE BACKUP:

*********************************************************************
#!/bin/bash
#Script para apagar o bckup mais antigo
timestamp=$(date +"%Y%m%d" )
bk1="vazio"
bk2="vazio"
bk1data=00000000
bk2data=00000000


#cd /bk_dotproject
for LINHA in $(ls | cut -c49-90); do
if [ "$bk1" = "vazio" ]; then
bk1=$LINHA
else
if [ "$bk2" = "vazio" ]; then
bk2=$LINHA
fi
fi
done

if [ "$bk2" = "vazio" ]; then
echo "Nao existem 2 arquivos de backup - $timestamp." >> /bk_dotproject/historico.txt

else
bk1data=$(ls -lt $bk1 | cut -c63-70)
bk2data=$(ls -lt $bk2 | cut -c63-70)
#echo $bk1data
#echo $bk2data


if [ $bk1data -lt $bk2data ]; then
echo "Apagando "$bk1" - Arquivo removido dia: $timestamp." >> /bk_dotproject/historico.txt
rm $bk1
else
echo "Apagando "$bk2" - Arquivo removido dia: $timestamp." >> /bk_dotproject/historico.txt
rm $bk2
fi

fi
*********************************************************************

CRONTAB:

******************************************
38 09 * * * bk_dotproject/del_backup.sh
******************************************



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts