Linux/Unix Shell Scripting - Script para automatizar copia de seguridad

 
Vista:

Script para automatizar copia de seguridad

Publicado por Freskito (1 intervención) el 16/12/2016 17:41:38
Buenas

Queria crear un script con el que poder automatizar la copia de seguridad de los archivos del servidor. Lo función que había pensado para el script es la siguiente:

1) Conectarme por ssh al servidor
2) Comprimir la carpeta donde se encentran los archivos
3) Desconectarme del ssh y copiar el archivo usando el comando scp
4) Conectarme de nuevo al ssh del servidor y borrar el archivo comprimido

Empeze ya con el script pero tengo problemas a la hora de ir siguiendo los pasos. Conseguí conectarme al servidor ssh y pasarle la contraseña que solicita, y también crear el archivo comprimido de la carpeta, pero cuando intentando realizar la desconexión del ssh y realizar la copia con scp el script no continúa.

El código que tengo de momento es el siguiente:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
####################################
#!/bin/bash
HOST="ip del servidor"
PUERTO="22"
 
/usr/bin/expect << EOF
 
spawn ssh -p $PUERTO root@$HOST
expect "root@ip_servidor password:"
send "contraseña\r"
expect "Welcome to Ubuntu 14.04.1 LTS (GNU/Linux 2.6.32-48-pve x86_64)

 * Documentation:  https://help.ubuntu.com/
Last login: Fri Dec 16 13:02:48 2016 from 146.82.60.213.static.reverse-mundo-r.com
root@dns246170:~# "
send "tar -cvf /var/www/vhosts/freskito.net/freskito.tar.gz /var/www/vhosts/freskito.net/httpdocs\r"
expect "*root@dns246170:~#*"
send "exit\r"
 
 
spawn scp -P $PUERTO root@$HOST:/var/www/vhosts/freskito.net/freskito.tar.gz /home/ubuntu/
expect "root@ip_servidor password:"
send "contraseña\r"
 
EOF
 
echo "Acabo el script"
###################################

No tengo mucha experiencia en los comandos de Linux para el script, lo que hice fue por la información que fui encontrando.

Si alguien sabe por qué me falla o sabe alguna forma mejor de realizar el proceso se lo agradecería mucho.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 12
Ha mantenido su posición en Linux/Unix Shell Scripting (en relación al último mes)
Gráfica de Linux/Unix Shell Scripting

Script para automatizar copia de seguridad

Publicado por soicker (9 intervenciones) el 27/12/2016 01:01:03
Hola.


Te recomiendo que ocupes alternativas, o por lo menos a mi me ayudan mas

Ejemplo

plink -pw $password ssh -l $user $host

bash (comprimir )
bash (borrar carpeta )


scp $user@$host:archivo.zip

+++++++++++++++++++++++++++++++++++++++

tambien podrias ocupar sshpass y omitir el stricthostkeychecking y poner el password.


se tienen muchas alternativas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar