Как использовать снимки LVM в Ubuntu?

19

Я установил Ubuntu, используя следующие параметры:

  • Удалите диск и установите Ubuntu
  • Зашифровать новую установку Ubuntu
  • Использовать LVM

Как создать моментальные снимки LVM, чтобы я мог вернуть системные изменения, когда это необходимо?

    
задан Aleksandr Gornostal 23.12.2017 в 15:41
источник

1 ответ

21

Примечание: все команды должны выполняться из sudo

Во-первых, уменьшите размер вашего корневого тома, чтобы освободить место для объема моментального снимка

  • Загрузка с Live CD
  • fdisk -l , чтобы увидеть имя вашего устройства.
    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 в моем случае
  • cryptsetup luksOpen /dev/sda3 crypt1 для расшифровки вашего объема
  • vgscan --mknodes , чтобы найти все группы томов
    Reading all physical volumes. This may take a while...
    Found volume group "ubuntu-vg" using metadata type lvm2
    
  • vgchange -ay для активации всех групп томов
    2 logical volume(s) in volume group "ubuntu-vg" now active
    
  • lvreduce -r -L -20G /dev/ubuntu-vg/root , чтобы уменьшить размер вашего корневого тома на 20 Гб. Это может занять некоторое время (мне понадобилось ~ 4 минуты).
    Это пространство позже будет использоваться для создания снимков LVM.
  • vgs , чтобы увидеть, что на самом деле вы получили 20G свободного места
    VG           #PV   #LV   #SN   Attr     VSize     VFree
    ubuntu-vg     1      2     0   wz--n-   230.44g   20.01g
    
  • reboot и удалить Live CD

Создайте снимок (т. е. активируйте режим «экспериментирование»)

Теперь, когда вы хотите сделать что-то рискованное с вашей системой, выполните следующую команду

  • lvcreate -s -n snap -L 20G /dev/ubuntu-vg/root
    Примечание: /dev/ubuntu-vg/root - это логический том, который вы хотите иметь снимок
  • lvs , чтобы увидеть, что том создан
    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
    
    Снимок активен с момента запуска lvcreate . Теперь вы можете начать экспериментировать с новыми вещами.

Сценарий # 1: вы хотите отменить изменения

  • lvconvert --merge /dev/mapper/ubuntu--vg-snap
    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.
    
  • reboot

Сценарий №2: вы хотите сохранить изменения

  • lvremove /dev/mapper/ubuntu--vg-snap

В заключение

Вам нужно запустить lvcreate , чтобы запустить процесс, а затем либо запустить lvconvert --merge , либо lvremove , чтобы закончить его.

Имейте в виду, что когда моментальный снимок активен, из-за стратегии Copy-On-Write все изменения сохраняются на 20Gb пространства (или какое бы значение вы ни выбрали). Один из способов проверки оставшейся емкости - посмотреть столбец Data% команды lvs .

    
ответ дан Aleksandr Gornostal 23.12.2017 в 15:51
источник