Buscar artículos en cambiatealinux.com


Durante este fin de semana, dias 3 y 4 de Diciembre, vamos ha estar haciendo mantenimiento de cambiatealinux y es posible que en a veces haya desconexiones y no se pueda acceder al contenido.

Disculpar las molestias.
cambiatealinux.com


¿ Eres desarrollador ? PHP, MySql, postgreSQL, ... " Visita https://www.netveloper.com encontrarás trucos, tutoriales y ayuda sobre programación.

Realizar copias de seguridad de un servidor desde el terminal


Por Alex el 14/03/2022 , Comentar el artículo

Comparte este 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.


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 el artículo compartelo en:      


Publicidad


Añadir un comentarios:

Nombre:
Email: (no se publica el email)





Publicidad

Ayuda sobre:
RECOMENDADOS


LOS MAS LEÍDOS




CATEGORÍAS
ARCHIVO


COMENTARIOS