¿Cómo puedo usar instantáneas LVM en Ubuntu?

18

He instalado Ubuntu usando estas opciones:

  • Borre el disco e instale Ubuntu
  • Cifre la nueva instalación de Ubuntu
  • Usar LVM

¿Cómo puedo crear instantáneas LVM para que pueda revertir los cambios del sistema cuando sea necesario?

    
pregunta Aleksandr Gornostal 23.12.2017 - 15:41

1 respuesta

20

Nota: todos los comandos se deben hacer desde sudo

Primero, reduzca el tamaño de su volumen raíz para dejar espacio para un volumen de instantánea

  • Arranque desde Live CD
  • fdisk -l para ver el nombre de tu dispositivo.
    Device       Start       End   Sectors   Size Type
    /dev/sda1     2048   1050623   1048576   512M EFI System
    /dev/sda2  1050624   2050047    999424   488M Linux filesystem
    /dev/sda3  2050048 500117503 498067456 237.5G Linux filesystem
    
    /dev/sda3 en mi caso
  • cryptsetup luksOpen /dev/sda3 crypt1 para descifrar su volumen
  • vgscan --mknodes para encontrar todos los grupos de volúmenes
    Reading all physical volumes. This may take a while...
    Found volume group "ubuntu-vg" using metadata type lvm2
    
  • vgchange -ay para activar todos tus grupos de volúmenes
    2 logical volume(s) in volume group "ubuntu-vg" now active
    
  • lvreduce -r -L -20G /dev/ubuntu-vg/root para reducir el tamaño de su volumen raíz en 20 Gb. Esto puede demorar un tiempo (me llevó ~ 4 min).
    Ese espacio se usará más adelante para crear instantáneas LVM.
  • vgs para ver que en realidad tienes 20G de espacio libre
    VG           #PV   #LV   #SN   Attr     VSize     VFree
    ubuntu-vg     1      2     0   wz--n-   230.44g   20.01g
    
  • reboot y eliminar Live CD

Crear una instantánea (es decir, activar el modo "experimentación")

Ahora, cuando quiera hacer algo arriesgado con su sistema, ejecute el siguiente comando

  • lvcreate -s -n snap -L 20G /dev/ubuntu-vg/root
    Nota: /dev/ubuntu-vg/root es un volumen lógico del que desea tener una instantánea de
  • lvs para ver que el volumen ha sido creado
    LV     VG            Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
    root   ubuntu-vg     owi-aos--- 201.59g                                                    
    snap   ubuntu-vg     swi-a-s---  20.00g      root   0.00                                   
    swap_1 ubuntu-vg     -wi-ao----  15.90g
    
    La instantánea está activa desde el momento en que ejecuta lvcreate . Ahora puede comenzar a experimentar con cosas nuevas.

Escenario n.º 1: desea revertir los cambios

  • %código%
    Logical volume ubuntu-vg/root contains a filesystem in use.
    Can't merge over open origin volume.
    Merging of snapshot ubuntu-vg/snap will occur on next activation of ubuntu-vg/root.
    
  • lvconvert --merge /dev/mapper/ubuntu--vg-snap

Escenario n.º 2: desea conservar los cambios

  • reboot

En Conclusión

Básicamente debes ejecutar lvremove /dev/mapper/ubuntu--vg-snap para iniciar el proceso y luego ejecutar lvcreate o lvconvert --merge para finalizarlo.

Tenga en cuenta que cuando la instantánea está activa, debido a la estrategia Copiar al escribir, todos los cambios se guardan en esos 20Gb de espacio (o cualquier valor que establezca). Una forma de verificar la capacidad restante es mirar la columna Datos% del comando lvremove .

    
respondido por el Aleksandr Gornostal 23.12.2017 - 15:51

Lea otras preguntas en las etiquetas