Ajuda Com simples Script de Backup [RESOLVIDO]

Iniciado por skycrow, 02 de Agosto de 2008, 10:08

tópico anterior - próximo tópico

skycrow

Bom dia a todos!

Gostaria de ajuda de vocês, pois não sei o que está rolando de errado. Um amigo meu possui um pequeno servidor de Arquivos com o Xubuntu 6.06 e pediu pra eu fazer um Script de Backup para o Pend-drive dele. então bolei uma coisa supser simples:

Citar# Apagar Arquivo de Backup Anterior

cd /home
rm -rf Bkp-*.tar.gz



# Criar Arquivo de Backup


data=`date +%d-%m-%Y-%H-%M`


tar -zcvf Bkp-$data.tar.gz /home/patricia /home/manuel /home/wania /home/muto /arquivos/publico



# Copiando Arquivo para o Pen-drive


mount /dev/sda1 /mnt/pendrive

rm -rf /mnt/pendrive/Bkp-*.tar.gz

cp Bkp-*.tar.gz /mnt/pendrive

umount /dev/sda1


Coloquei ele no /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.
# This file also has a username field, 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    run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || run-parts --report /etc/cron.daily
47 6    * * 7   root    test -x /usr/sbin/anacron || run-parts --report /etc/cron.weekly
52 6    1 * *   root    test -x /usr/sbin/anacron || run-parts --report /etc/cron.monthly
00 20   * * 1-5 root    /scripts/backup.sh
#


Só que dá um pequeno problema. Quando ele vai criar o Arquivo tar.gz de backup ele só arquiva 21MB e para. Nunca cria o Arquivo inteiro. Se eu chamar o script na mão vai que é uma blz, mas no contrab não rola, e se eu colocar no crontab do usuário "crontab -e" que eu criei durante a instalação do ubuntu ele nem roda. Alguém teria alguma idéia? Desde já agradeço pessoal! abraços a todos.

sprit

CitarSe eu chamar o script na mão vai que é uma blz, mas no contrab não rola, e se eu colocar no crontab do usuário "crontab -e" que eu criei durante a instalação do ubuntu ele nem roda. Alguém teria alguma idéia? Desde já agradeço pessoal! abraços a todos.

Bom para voce roda sem problemas e melhor usa o root(ate para montar particoes), mas tem que ter cuidado!!!!

Se o problema e roda ao inicializar(como root) tem um arquivo em /etc/rc.local , so coloca a linha de comando
como exemplo:


bash scriptbackup.sh &  #so um & para deixar em segundo plano. assim n interompe a inicializacao do ubuntu
exit 0


Se quiser algo mais avancado por permisao de usuario, restricoes..... vai ter que estudar um pouco da arquitetura
que e as pastas /etc/rc.0 ... a ordem que os programas inicializacao no Linux, como drivers, programas, firewall.....

skycrow

Boa tarde galera!


Então Sprit, o meu problema era com o Crontab, e como eu escrevi lá no outro post, o Script estava rodando com o usuário Root mesmo. É um Script que roda todos os dias, para fazer um Backup direto no Pendrive. De qualquer forma, acabei resolvendo do seguinte e estranho modo:

Antes tinha deixado a configuração do Crontab desse jeito :
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.
# This file also has a username field, 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    run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || run-parts --report /etc/cron.daily
47 6    * * 7   root    test -x /usr/sbin/anacron || run-parts --report /etc/cron.weekly
52 6    1 * *   root    test -x /usr/sbin/anacron || run-parts --report /etc/cron.monthly
00 20   * * 1-5 root    /scripts/backup.sh
#


Então Apenas acrescentei a opção para criar um Arquivo de Log, e pronto. o Script passou a funcionar direitinho, vai entender. Lembrando que eu uso o Xubuunto 6.06 LTS, ficou assim:

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.
# This file also has a username field, 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    run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || run-parts --report /etc/cron.daily
47 6    * * 7   root    test -x /usr/sbin/anacron || run-parts --report /etc/cron.weekly
52 6    1 * *   root    test -x /usr/sbin/anacron || run-parts --report /etc/cron.monthly
00 20   * * 1-5 root    /scripts/backup.sh > /scripts/Backup.log
#


Mesmo assim, obrigado pela força Sprit. Abraços!