Información
Actualidad
Aquí encontraras noticias de actualidad sobre Gnu Linux y Open Source.

Además de información sobre la comunidad LiGNUx.
Distribuciones y entornos
Información ordenada sobre los diferenes sistema operativos Gnu Linux y las diferentes opciones de entornos gráficos.
Tutoriales y guías
Todos los pasos e informaciones que puedes desear para tu día a día.
Tutoriales
Tutoriales
Programación
Programación
About Us
Get to know the people behind the code and the mission behind the work
how we handle data
Privacy
Security
Legal

Creando copias de seguridad con Btrfs

12 noviembre, 2017

Btrfs es un sistema de archivos copy on write para GNU/Linux. Este tiene muchísimas opciones y permite una gran flexibilidad, una de las cosas que más me gustan son las snapshots. Estas permiten crear una copia de un subvolumen instantáneamente, estas copias en principio no ocupan espacio, ya que los ficheros no se duplican, en su lugar apuntan a los originales hasta que se realiza un cambio, en ese momento la snapshot creada empezara a ocupar espacio, podríamos decir que equivale a una copia incremental.

Por lo tanto tenemos una forma muy barata (en tiempo y espacio) para crear copias de todo el sistema. La restauración de las copias también es inmediata, ya que unicamente se deben de mover un par de subvolumenes que también es instantáneo. En el articulo voy a explicar como se realiza una copia de forma manual y en una segunda parte veremos como automatizar el proceso que es la parte interesante.

Antes de empezar hay que tener en cuenta que se requiere que los datos NO estén en la raíz del volumen, ya que si están en la raíz luego no se puede restaurar con facilida. Un esquema de ejemplo:

Voy a suponer que ya tenemos todo configurado como se hace normalmente al instalar Btrfs, que básicamente es instalar el sistema o meter todos los datos en subvolumenes, por ejemplo en Ubuntu, Manjaro o Suse al seleccionar Btrfs ya realiza todo automáticamente para tener un esquema similar al superior. Evidentemente otras distros como Void, Gentoo o Arch se les puede instalar empleando este esquema montando el subvolumen como raiz a la hora de instalar. Por norma general la raíz del sistema se instala en "@" y el home en "@home".

Lo primero es tener un punto de montaje en la raíz directamente:

Montamos el volumen correspondiente

Creamos la carpeta donde irán las copias:

Ahora ya podemos hacer unas pruebas, por ejemplo crear una copia manualmente:

En este momento podemos explorar todos los ficheros que se han copiado y ver como se ha creado exitosamente, pero hay que tener en cuenta que no se crean copias recursivamente de otros subvolumenes, es decir, no se copian los subvolumenes que estan dentro del que se quiere copiar. Esto se puede aprovechar para no copiar determinados directorios o separar las copias. Tened en cuenta que un subvolumens es como una carpeta más del sistema.

Finalmente nos queda saber como restaurar una copia de seguridad. Lo más fácil es mover el subvolumen renombrándolo y haciendo una snapshot de la que queramos usar:

Y cuando vayamos a arrancar nuestro sistema estará exactamente igual que el momento el que se hizo la copia.

Como alternativa se puede no mover el subvolumen original y al restaurar la copia lo llamamos "@2" por ejemplo, luego se puede agregar una entrada manualmente en el GRUB tocando el fichero "/boot/grub/grub.cfg" o estando en GRUB podemos modificar la opción "rootflags=subvol=@" con el nombre deseado pulsando la tecla "e". Pero en este caso también se debería de modificar el fichero "/etc/fstab" para reflejar esos cambios.

Si conocéis distribuciones que automáticamente instalen el sistema bajo un subvolumen comentadlo y aprendemos todos. Espero que les haya gustado.

Escrito por konqi

Perfection. Deep in the core. In strands.

Suscribirse
Notificarme las
guest
0 Comentarios
Feedbacks en línea
Ver todos los comentarios
LiGNUx trabaja sobre una licencia de Creative Commons Reconocimiento 4.0 Internacional.
cloudflagpaperclipprinterfile-emptyfilm-playcamera-videopicturelaptop-phonebriefcasecrossmenu
linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram