Buscar artículos en cambiatealinux.com



Realizar copias de seguridad de un servidor desde el terminal

Por Alex, el 14/03/2022 · 3 min lectura   -  Comentarios: 0   -  Comentar el artículo
Es importante que desde cualquier distribución Linux tengamos una política de backups (copias de seguridad) de nuestra información importante. En este artículo os muestro cómo copiar con rsync los directorios que puedan ser interesante.
Guardar el artículo.

Si te ha gustado y ayudado puedes compartir en redes para que el artículo sea mas visible y pueda ayudar a mas gente:




Para realizar este backup vamos a crearnos un script en bash desde el terminal y así poder automatizar estas copias.

Con este comando se pueden copiar ficheros del servidor al local preservando los enlaces simbólicos y la fecha de creación de los archivos.

rsync -avz -e 'ssh -p22' --times usuario@192.168.1.10:/ruta/web/web1.com/ .

los parámetros significan:
  • a, es para que copie enlaces simbólicos y recursivamente, similar a poner -rl
  • v, para que se muestre por pantalla lo que va copiando
  • z, para que comprima la descarga
  • e, es para realizar la copia por ssh seguido del puerto correspondiente
  • times, para que respete las fechas de cada fichero y no ponga la hora de la copia.
seguido a los parámetros va la ruta del servidor que queremos copiar y la ruta donde dejaremos la copia, en este caso "." es la ruta desde donde se ejecuta el comando. Con rsync también podemos hacer copias incrementales, es decir, copiar solo los archivos modificados.

Os dejo un par de artículos sobre copiar ficheros:
Ahora vamos a automatizar esto y ejecutar el comando de copia desde un archivo, así podemos copiar diferentes directorios del servidor y también podríamos programar el script para que las copias se realicen automáticamente a una determinada hora.

El script lo dejo comentado, en este ejemplo copio dos directorios del servidor a mi pc local.

# Obtenemos la fecha en formato 20220312 para crear el directorio del backup
DATE_FILE=`date +%Y%m%d`

# Obtenemos la ruta del script, por ejemplo /ruta/del/script/fichero.sh
SCRIPT=$(readlink -f $0)

# Obtenemos solo el directorio sin el script
SCRIPTPATH=`dirname $SCRIPT`

# La IP del servidor desde donde vamos a copiar
IP='192.168.1.10'

# Creamos el directorio de backup y entramos dentro
echo "Creando directorio de backup"
mkdir ${DATE_FILE}
cd ${DATE_FILE}

# Dentro del directorio de backup creamos el primer directorio de los datos que vamos a copiar
# Y entramos dentro
echo "Creando directorio de backup1"
mkdir backup_1
cd backup_1

# Realizamos la copia del directorio del servidor que queremos al directorio backup_1
# que en este caso se representa con un . porque es el directorio en que nos encontramos
rsync -avz -e 'ssh -p22' --times usuario@${IP}:/ruta/web/web1.com/ .

# Volvemos al directorio de la fecha para crear el segundo directorio de backup, backup_2
cd ${SCRIPTPATH}/${DATE_FILE}

echo "Creando directorio de backup1"
mkdir backup_2
cd backup_2

# Y realizamos la copia como en el anterior
rsync -avz -e 'ssh -p22' --times usuario@${IP}:/ruta/ficheros/ .

echo "END"



Y esto es todo amigos!!
Gracias por seguirme y leerme, espero que les haya ayudado
Saludos
Alex.




Si te ha gustado y ayudado puedes compartir en redes para que el artículo sea mas visible y pueda ayudar a mas gente:




Publicidad




Añadir un comentarios:


  • Comenta el artículo si te ha sido de utilidad y te ha funcionado para que pueda ayudar a mas personas.
  • Si no ha funcionado comentalo tambien asi yo puedo repasarlo e intentar ver porque no funciona.

En ambos casos tú opinión es valiosa y de mucha utilidad para mejorar el blog y ayudar a otros usuarios.



(no se publica el email)


Los comentarios no se publican al momento sino que son revisados para prevenir el spam.

Todavía no hay comentarios.
Archivo:


2024 3 2023 34 2022 87 2021 87 2020 83 2019 38 2018 37 2017 85 2016 138 2015 49 2014 5 2013 9 2012 7 2010 1