Script Backup

1. Script Backup

julio cesar
julio21

(usa Ubuntu)

Enviado em 22/06/2013 - 19:52h

Boa noite galera, estou com uma dificuldade para fazer um script
tipo, nao consigou mais ir em frente,
o meu script vai fazer backup na rede usando o ssh
ai sera passado 3 parametros que serao 3 arquivos de texto.
o primeiro sera um arquivo com os ip o segundo com o caminho de origem do backup, o problema e que parei ai, nao consigo passar o caminho do arquivo pelo arquivo de texto. da um erro diz que o parametro e um diretorio.

vou passar o script

#!/bin/bash
#script para gerar backup pela rede

#IP origem do backup
ip_origem=$1

#diretorio de origem do backup
dir_origem=$2

#diretorio destino do backup
dir_destino=$3

#ler os enderecos IP's
while read ip_origem
do

while read dir_origem
do

while read dir_destino
do

sshpass -p redes@2013 scp redes@$ip_origem:$dir_origem $dir_destino;

done < $ip_origem
done < $dir_origem
done < $dir_destino

os parametros sao arquivos de texto, porem um arquivo de texto e um caminho para um diretorio, ai que ta dando erro.
quem puder me ajudar agradeco muito.


  


2. Re: Script Backup

Perfil removido
removido

(usa Nenhuma)

Enviado em 22/06/2013 - 21:20h

Fala Julio, beleza?

Vou dar uma olhada nesse código e fazer um teste, mas independente, copia e cola o erro que tá dando aí, pragente saber exatamente o que se passa.

Abraço.


3. Re: Script Backup

Buckminster
Buckminster

(usa Debian)

Enviado em 22/06/2013 - 22:52h

Deixa ver se eu entendi: você tem um arquivo de texto e dentro dele tem um caminho para um arquivo /caminho/para/o/arquivo... é isso?

E aqui "porem um arquivo de texto e um caminho para um diretorio, ai que ta dando erro." você está querendo dizer que é um caminho para um diretório?


4. Re: Script Backup

Luiz Lopes
lopesluizh

(usa Ubuntu)

Enviado em 23/06/2013 - 01:42h

julio21 escreveu:

Boa noite galera, estou com uma dificuldade para fazer um script
tipo, nao consigou mais ir em frente,
o meu script vai fazer backup na rede usando o ssh
ai sera passado 3 parametros que serao 3 arquivos de texto.
o primeiro sera um arquivo com os ip o segundo com o caminho de origem do backup, o problema e que parei ai, nao consigo passar o caminho do arquivo pelo arquivo de texto. da um erro diz que o parametro e um diretorio.

vou passar o script

#!/bin/bash
#script para gerar backup pela rede

#IP origem do backup
ip_origem=$1

#diretorio de origem do backup
dir_origem=$2

#diretorio destino do backup
dir_destino=$3

#ler os enderecos IP's
while read ip_origem
do

while read dir_origem
do

while read dir_destino
do

sshpass -p redes@2013 scp redes@$ip_origem:$dir_origem $dir_destino;

done < $ip_origem
done < $dir_origem
done < $dir_destino

os parametros sao arquivos de texto, porem um arquivo de texto e um caminho para um diretorio, ai que ta dando erro.
quem puder me ajudar agradeco muito.




boa noite júlio.

aqui é o luiz henrique, da faculdade.

cara, eu fiz aqui usei o cat

#!/bin/bash

cat <nome do arquivo que contém os ip's> in <variável onde você vai guardar cada ip>
do
sshpass -p redes@2013 scp redes@<variável onde você vai guardar cada ip>:/home/redes/Documentos :/tmp
done


manda um e-mail pra mim, a gente troca uma idéia no skype. Tirei umas dúvidas aqui no fórum também..



5. Re: Script Backup

Perfil removido
removido

(usa Nenhuma)

Enviado em 23/06/2013 - 01:57h

julio21,

Pelo que entendi, esse script estará rodando numa máquina e receberá arquivos de backup, de máquinas remotas. Estas, que serão reconhecidas através de uma lista, contendo seus respectivos ip's.

OBS1.: Script que precisa de parâmetro para rodar é legal realizar o teste a seguir:

if [ $# -ne 3 ];then
echo "Use: $0 <lista_ips> <dir_bkp_ori> <dir_bkp_dest>"
exit 1
fi


OBS2.: Troquei o 'while' por 'for' e usei o scp, pois já tenho configurado o ssh via chave pública nas minhas máquinas virtuais de teste. Ficou assim:

for i in `cat $1`
do
scp root@$i:$2 $3
done


Era isso mesmo?
Flws.




6. Re: Script Backup

Perfil removido
removido

(usa Nenhuma)

Enviado em 23/06/2013 - 02:06h

lopesluizh escreveu:

boa noite júlio.

aqui é o luiz henrique, da faculdade.

cara, eu fiz aqui usei o cat

#!/bin/bash

cat <nome do arquivo que contém os ip's> in <variável onde você vai guardar cada ip>
do
sshpass -p redes@2013 scp redes@<variável onde você vai guardar cada ip>:/home/redes/Documentos :/tmp
done


manda um e-mail pra mim, a gente troca uma idéia no skype. Tirei umas dúvidas aqui no fórum também..


Cat?

Acho que usou o "for", não? Mesmo assim a sintaxe está errada :p

Flws.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts