<div class="page"> <div class="cover text-center"> <img class="mx-auto" src=/itb/images/logo_mislata.png alt="logo"> # Còpies de seguretat amb TAR <div class="text-end fit-content ms-auto my-3 mt-auto pt-3"> <p><strong>Autor:</strong> Joan Puigcerver Ibáñez</p> <p><strong>Correu electrònic:</strong> j.puigcerveribanez@edu.gva.es</p> <p><strong>Curs:</strong> 2024/2025</p> </div> <div> <p>Aquest material és una obra derivada a partir del material de: <strong>Alicia Pedrosa</strong></p> <p class="fw-bold mb-0">Llicència: BY-NC-SA</p> <p class="d-none d-md-block">(Reconeixement - No Comercial - Compartir Igual)</p> <a href="https://creativecommons.org/licenses/by-nc-sa/4.0/deed.ca" target="_blank"> <img class="mx-auto" src="/itb/images/license.png" alt="Licence"/> </a> </div><!--license--> </div><!--cover--> </div><!--page--> {:toc} # Requisits En aquesta pràctica cal instal·lar una màquina virtual amb __Ubuntu 20.04__. - Cal configurar el nom de la màquina perquè siga __UbuntuSI-01__. - Cal configurar el prompt com s'ha especificat en la pràctica. ## Exercici 1: Còpies de seguretat ### Objectius - Apendre a utilitzar eines d'empaquetatge i compresió de fitxers i directoris. - Apendre a fer còpies de seguretat totals, diferencials i incrementals. - Apendre a programar tasques ### Tasca - Crear la carpeta `~/backups` al vostre directori d'usuari, on es guardaran les còpies de seguretat. - Crear la carpeta `~/data` al vostre directori d'usuari. - Crear dins d'aquesta carpeta 4 fixers de text anomentats `fileN.txt`, on `N` és el número del fixers. - El contingut de cada fitxer és: _"Aquest és el contingut del fitxer `N`."_ _Exemple per el primer fitxer_: ```bash echo "Aquest és el contingut del fitxer 1." > ~/data/file1.txt ``` - Tutorial `tar`: https://juncotic.com/tar-backups-incrementales-gnu-linux/ - Documentació oficial: https://www.gnu.org/software/tar/manual/html_node/Incremental-Dumps.html #### Crear còpies de seguretat Utilitzant l'eina `tar`: - Crea una còpia completa del directori `~/data` a `~/backups/bkp0_completa.tzg`. El snapshot ha de guardar-se a `~/backups/snapshot.snar`. - Esborra `fitxer2.txt`, crea `fitxer5.txt` (amb el mateix format anterior). - Crea una còpia incremental del directori `~/data` a `~/backups/bkp1_incremental.tzg` #### Recuperar còpies de segureatat - Esborra el directori `~/data`. Utilitzant l'eina `tar`: - Recupera el directori `~/data` des de la còpia completa. Comprova que els continguts corresponen a aquesta versió (Hauries de tindre els fitxers 1, 2, 3 i 4). - Recupera els canvis realitzats en el còpia incremental. Comprova que els continguts corresponen a aquesta versió (1, 3, 4 i 5). #### Programar còpies de seguretat - Tutorial `crontab`: https://www.hostinger.es/tutoriales/cron-job - Documentació oficial: https://man7.org/linux/man-pages/man5/crontab.5.html Utilitzant `crontab` i `tar`: - Programa que es realitze una còpia completa cada diumenge a les 23:59 a `~/backups/bkpYYYYMMDD_completa.tgz`. - Programa que es realitze una còpia completa cada dia (excepte diumenge) a les 23:59 a `~/backups/bkpYYYYMMDD_incremental.tgz`. Per obtindre `YYYYMMDD` podeu utilitzar la comanda `date +"%Y%m%e"`. _Exemple_: ```bash tar -cvzf /home/user/backups/bkp`date +"%Y%m%e"`_completa.tgz /home/user/data ```