DrNetwork
(usa CentOS)
Enviado em 26/09/2012 - 10:35h
Olá, eu criei um script que faz o backup das pastas selecionadas em uma só pasta, compacta, manda por email e apaga a pasta original e o backup da semana passada.
A questão é que quando eu mesmo rodo com "./backup.sh", ele faz todas as tarefas com sucesso e o backup está lá no meu email. Mas eu coloquei o job no crontab para rodar toda sexta-feira às 7 da manhã e ele só faz parte do script. Ele chega a criar o arquivo compactado e apaga a pasta backup, mas quando vou olhar no gmail, não tem o email lá...
Segue o script para que vejam se fiz algo de errado:
*******************************************************************
#!/bin/bash
#script de backup do box linux
# Criacao dos diretorios
cd /var
mkdir backup
cd backup
mkdir usr
cd usr
mkdir local
cd local
mkdir nagios
mkdir etc
cd etc
mkdir email
cd /var/backup
mkdir etc
cd etc
mkdir vsftpd
mkdir mrtg
mkdir httpd
cd httpd
mkdir conf
mkdir conf.d
cd /var/backup
mkdir var
cd var
mkdir www
cd www
mkdir html
cd html
mkdir mrtg
cd /var/backup
# pastas a serem copiadas com seu caminho original
yes | cp -rf /usr/local/nagios/* /var/backup/usr/local/nagios
yes | cp -rf /usr/local/etc/email/* /var/backup/usr/local/etc/email/
yes | cp -rf /etc/sudoers /var/backup/etc/sudoers
yes | cp -rf /etc/mrtg /var/backup/etc/mrtg
yes | cp -rf /etc/rc.local /var/backup/etc/rc.local
yes | cp -rf /etc/vsftpd/* /var/backup/etc/vsftpd
yes | cp -rf /etc/httpd/conf/* /var/backup/etc/httpd/conf
yes | cp -rf /etc/httpd/conf.d/* /var/backup/etc/httpd/conf.d
yes | cp -rf /var/www/html/mrtg/* /var/backup/var/www/html/mrtg
yes | cp -rf /var/www/html/*.html /var/backup/var/www/html
#comprimir a pasta de backup em 1 arquivo e apagar a pasta backup
cd /var
tar -zcvf backup_linux_`date +%Y-%m-%d`.tar.gz backup
rm -rf backup
# Envie o log por email
email -b -s "Backup Nagios `date +%Y-%m-%d`" -a /var/backup_linux_`date +%Y-%m-%d`.tar.gz netrocinha@gmail.com
# Apague o backup da semana passada
rm backup_linux_$(date -d "7 days ago" +%Y-%m-%d).tar.gz
echo Finalizado com sucesso!!!
*******************************************************************
E aqui está o crontab que edito com o comando "crontab -e":
0 7 * * 5 sh /root/backup.sh
Agradeço de antemão.