Práctica 1: Backup del directorio home con tar¶
Objetivo¶
El objetivo de esta práctica es realizar copias de seguridad del directorio home de tu usuario de manera recursiva, utilizando el comando tar en un sistema Ubuntu 24.04. Aprenderás a crear copias de seguridad completas, diferenciales e incrementales, y a automatizar el proceso mediante cron.
Contexto¶
El directorio home en Ubuntu 24.04 se encuentra en /home/tu_usuario, donde tu_usuario es el nombre del usuario. Este directorio contiene archivos personales, configuraciones y otros datos importantes. Es fundamental realizar copias de seguridad regulares de este directorio para evitar la pérdida de información valiosa.
Material necesario¶
- Sistema operativo: Ubuntu 24.04.
- Comando principal:
tar(para crear archivos comprimidos). - Compresión:
gzip. - Acceso: Permisos de administrador o usuario con permisos suficientes para manipular cron y ejecutar scripts.
Desarrollo¶
Instrucciones¶
- Copia de seguridad completa del directorio home:
Realiza una copia de seguridad recursiva del directorio home utilizando el comando
tary comprimiéndola congzip:
tar -cvzf /backups/home_backup.tar.gz /home/
c: Crear un archivo.v: Modo verbose, muestra los archivos procesados.z: Comprimir congzip.-
f: Especifica el nombre del archivo de salida. -
Copia de seguridad diferencial: Modifica al menos 2 archivos y añade 1 archivo nuevo a tu directorio home. Luego, realiza una copia de seguridad diferencial utilizando el siguiente comando:
tar -cvzf /backups/home_diff_backup.tgz -g /backups/backups.log /home/
La opción --listed-incremental utiliza un archivo .snar para registrar los archivos que han cambiado desde la última copia de seguridad.
-
Modificación y eliminación de archivos: Modifica al menos 2 archivos existentes y elimina 1 archivo de tu directorio home.
-
Automatización de la copia de seguridad completa con cron: Automatiza la copia de seguridad completa para que se ejecute el día 1 de cada mes a las 2:00 AM. Para ello, crea un script llamado
copiaTotal.shDale permisos de ejecución al script:
chmod +x /backups/copiaTotal.sh
Luego, añade la tarea cron para ejecutar el script automáticamente todos los viernes a las 17:00:
crontab -e
Añade la siguiente línea al archivo cron:
0 2 1 * * /backups/copiaTotal.sh
- Automatización de la copia diferencial con cron:
Automatiza la copia diferencial para que se ejecute los días 14 y 28 de cada mes a las 2:00 AM. Crea un script de respaldo diferencial llamado
copiaDifferencial.shy añádelo a cron:
crontab -e
Añade esta línea:
0 2 14,28 * * /backups/copiaDifferencial.sh
-
Restauración de archivos del directorio home: Elimina el directorio home o los archivos dentro de él y restaura desde la copia de seguridad realizada:
rm -rf /home/tu_usuario tar -xvjf /backups/home_backup.tgz -C /home
Consideraciones de seguridad¶
- Permisos de archivo: Asegúrate de que solo los usuarios autorizados puedan acceder a las copias de seguridad. Puedes ajustar los permisos de los archivos con:
chmod 600 /backups/home_backup.tgz
- Verificación de integridad: Utiliza herramientas como
sha256sumomd5sumpara verificar la integridad de las copias de seguridad:
sha256sum /backups/home_backup.tgz
- Almacenamiento remoto: Para una mayor seguridad, se recomienda almacenar las copias de seguridad en un servidor remoto o en la nube.
Reflexión¶
Al finalizar esta práctica, deberías ser capaz de:
- Realizar copias de seguridad completas, diferenciales e incrementales de tu directorio home.
- Comprimir las copias de seguridad para ahorrar espacio.
- Automatizar el proceso de copias de seguridad utilizando cron.
- Restaurar datos desde una copia de seguridad.
Entrega¶
Entrega un informe que incluya:
- Capturas de pantalla de cada paso realizado.
- Explicación de cada tipo de copia de seguridad y cuándo utilizar cada una.
- Reflexión personal sobre la importancia de las copias de seguridad y las medidas de seguridad implementadas.
- Cualquier problema encontrado y cómo lo solucionaste.
- El script
copiaTotal.shycopiaDifferencial.shutilizados para la automatización.