Realizar Snapshots con LVM
LVM nos permite realizar instantáneas o snapshot de los Volúmenes Lógicos (LV), esta funcionalidad nos permitirá guardar el estado actual de un LV y revertir cambios al estado anterior en caso de necesitarlo.
Hay que tener la precaución que la instantánea no se quede sin espacio, de ser así la instantánea quedaría inservible. Es buena política monitorizarla para ampliarla en el caso de necesitarlo, la forma de ampliarla es como si de un LV se tratase. También tenemos la opción de hacer que crezca automáticamente modificado los siguiente parámetros en /etc/lvm/lvm.conf.
snapshot_autoextend_threshold = 100
snapshot_autoextend_percent = 20
Para crear la instantánea utilizamos el comando lvcreate con el parámetro “-s”, el formato sería el siguiente:
lvcreate –L [tamaño] –s –n [nombre_instantanea] [volumen]
Como ejemplo crearemos una instantánea del Volumen Lógico lvol_01 que se encuentra en el Grupo de Volumen llamado Volumen01
# lvcreate –L 100M –s –n lvol01_snapshot /dev/Volumen01/lvol_01
Con el comando lvs podremos ver que hemos creado el snapshot:
# lvs
A partir de ahora tenemos una foto (snapshot) de los archivos que pertenecían al lvol_01
Volver al estado anterior al snapshot
En el caso que queramos volver al estado de antes de crear el snapshot y deshacer los cambios realizado desde el mismo:
# lvconvert --merge /dev/Volumen01/lvol_01_snapshot
Y reiniciamos el Sistema, para evitar el reinicio podemos desmontar la unidad y desactivarla antes de proceder a realizar el merge. Para desactivar el volumen
# lvchange -an /dev/Volumen/lvol_01
Para activar el volumen:
# lvchange -ay /dev/Volumen/lvol_01
Validar los datos del snapshot y borrarlo
Para mantener los datos anteriores y posteriores al snapshot en el volumen lvol_01 y además eliminar el shapshot lvol_01_snapshot ejecutaremos:
# lvremove /dev/Volumen01/lvol_01_snapshot