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:
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.
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


0