Crontab nao funfa com script para backup

Iniciado por koga021, 15 de Janeiro de 2009, 11:50

tópico anterior - próximo tópico

koga021

Script para Backup
Citar
#!/bin/bash

#arquivos para backup
arquivos='/home/elsa-rj/douglas2 /home/elsa-rj/ELSA'

#espaço em branco antes de $(date --i)
data="$(date --i)"


#destino e onde serao armazenado o tar.gz enquanto nao e enviado ao servidor
destino="/home/elsa-rj/douglas/$data"

#troca de valores
alvo=$destino

#entrando na pasta o qual sera o backup
cd /home/elsa-rj/douglas/
chmod 777 /home/elsa-rj/douglas/
mkdir $alvo
chmod 777 $alvo
tar -czvf $data.tar.gz $arquivos
chmod 777 $alvo.tar.gz

#########fim da compactaçao#################

#########Envio via FTP#######################
# Dados do arquivo de backup

###################ALTERAR AKI LOGIN,SENHA IP####################
# Dados do servidor FTP
HOST_FTP='157.86.41.211'
USUARIO_FTP='servidor'
SENHA_FTP='servidor'

# A partir daqui não precisa mais editar.
# put local de origem   nome no servidor
# Acessa o FTP e coloca os arquivos
ftp -in << EOF
open $HOST_FTP
user $USUARIO_FTP $SENHA_FTP
cd /servidor
put $alvo.tar.gz $data.tar.gz
bye
EOF
echo "apagando arquivo compactado"
rm $alvo.tar.gz
rmdir *
echo "Backup efetuado com sucesso"

#halt para desligar

Meu Crontab  /etc/crontab
Citar
# /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 )

31 11 * * * root /home/elsa-rj/backup_final.sh
31 11 * * * root /home/elsa-rj/backup_final.sh >> /dev/pts/3


Essas duas linhas ja testei e nehuma funcionou
Bom o arquivo de backup esta com a permiçao 777 logo nao pode ser permição.
acontece que o script funciona quando executado a mão  ./backup_final
mas quando ele e executado pelo crontab ele fica apenas com 10%"do tamanho que deveria ter.
ja tentei tambem utilizar un script que chame esse script, e tambem da o mesmo resultado.

Desprezem tambem os comentarios idiotas do script kkk

Me ajudem ja to desesperado, o script do backup ta funcional, mas porem o mais simples que e o crontab nao funfa
ja vi todas as soluçoes do forun e nehuma funfa.
abraço galera

koga021


roan

Experimente chamá-lo assim:

root /home/elsa-rj/backup_final.sh  2>/dev/null

koga021

Obrigado pela Dica, porem acabei nao usando, pois verifiquei que o ftp começa a dar problemas quando sao arquivos muito grandes.

Por isso adotei o rsync, menos complicado, nao demanda mais tempo com programaçao e funciona perfeitamente com qualquer volume de dados.

um forte abraço