Practica 4: Realización de copias de seguridad en Linux (Backup completo e incremental)
1. Objetivo #
El alumno aprenderá a realizar:
- Un backup completo del sistema usando
tar - Un backup incremental con
rsync - Excluir carpetas
- Restaurar una copia
- Automatizar el backup con
cron
2. PARTE 1 - Preparación del entorno #
- Crear una máquina virtual Linux (Ubuntu Server o Rocky Linux).
- Crear dentro del sistema un directorio llamado /respaldo donde guardaremos las copias:
1sudo mkdir /respaldo
- Crear un directorio simulado con archivos importantes:
1mkdir ~/importante 2echo "archivo1" > ~/importante/a.txt 3echo "archivo2" > ~/importante/b.txt
3. PARTE 2 - Backup completo usando tar #
Crear un backup completo de la carpeta /etc y del directorio ~/importante.
- Ejecuta:
1sudo tar -cvpzf /respaldo/sistema_completo.tar.gz /etc /home/$USER/importante
- Comprueba que el archivo existe:
1ls -lh /respaldo
4. PARTE 3 - Backup incremental con rsync #
Crear un directorio de destino para el backup incremental:
1sudo mkdir /respaldo/incremental
Realizar el backup incremental:
1sudo rsync -av --delete /home/$USER/importante/ /respaldo/incremental/
Añade un archivo más:
1echo "nuevo archivo" > ~/importante/c.txt
Ejecuta de nuevo rsync:
1sudo rsync -av --delete /home/$USER/importante/ /respaldo/incremental/
5. PARTE 4 - Backup excluyendo directorios #
Excluye el archivo b.txt usando --exclude:
1sudo rsync -av --exclude "b.txt" ~/importante/ /respaldo/incremental_excluido/
6. PARTE 5 - Restauración de un backup #
- Borra la carpeta importante (simulando pérdida):
1rm -r ~/importante
- Restaura desde el backup completo:
1tar -xvpzf /respaldo/sistema_completo.tar.gz -C /
- Verifica que
~/importantevuelve a existir.
7. PARTE 6 - Programar backups automáticos (cron) #
- Edita cron:
1crontab -e
- Programa un backup con rsync cada día a las 02:00:
0 2 * * * rsync -av --delete /home/$USER/importante/ /respaldo/automatico/ >/dev/null 2>&1
8. ENTREGAR #
El alumno debe entregar un documento con:
-
Captura del backup completo (
tar) -
Resultado de ejecutar
rsyncdos veces -
Carpeta restaurada correctamente
-
Contenido del cron configurado
-
Explicación breve de:
- diferencia entre backup completo e incremental
- para qué sirve la opción
--deletede rsync - cuándo usarías
tary cuándorsync
Resumen del tema
Conceptos clave #
- Empaquetado Comprimido con
tar: creación de respaldos totales de directorios (tar -cvpzf backup.tar.gz /ruta) preservando permisos y atributos POSIX (-p). - Sincronización Eficiente con
rsync: sincronización diferencial rápida (rsync -av --delete) transfiriendo únicamente bloques modificados y purgando elementos eliminados en origen. - Exclusión y Restauración: exclusión selectiva de temporales (
--exclude) y extracción en destino contar -xvpzf backup.tar.gz -C /. - Automatización con Cron: planificación de tareas desatendidas en segundo plano mediante
crontab -e.
Qué debes recordar #
Usa tar para generar imágenes comprimidas puntuales de sistema y rsync con cron para sincronizaciones continuas e incrementales automatizadas.