Содержание

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents



Info
titleДанная статья применима к:
  • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6)

  • Astra Linux Special Edition РУСБ.10015-16 исп. 1

  • Astra Linux Common Edition 2.12



Info

LVM - Менеджер логических томов (англ. logical volume manager) — подсистема, позволяющая использовать разные области одного жёсткого диска и/или области с разных жёстких дисков как один логический том.

Info

Данная статья применима к:

  • ОС ОН Орёл 2.12
  • ОС СН Смоленск 1.6

    Термины

    • Физический том (physical volume, pv) — устройство, представляющееся системе как один диск (жёсткий диск или его раздел, RAID-массив);
    • Группа томов (volume group, vg) — несколько физических томов pv (группа, набор);
    • Логический том (logical volume, lv) — логический раздел; аналог разделов hda1, sdb3 и др.; виртуальное блочное устройство.

    Установка ОС Astra Linux на логических дисках LVM

    Для установки ОС Astra Linux на логические диски под управлением LVM следует:

    1. Начать установку в обычном режиме и продолжить её до этапа выбора разметки дисков:



    2. Выбрать способ размещения с использованием LVM (на снимке экрана выше - выбран способ без защитного преобразования данных, который и описывается далее. Установка с защитным преобразованием описана в статье Установка Astra Linux на дисках с защитным преобразованием данных).

    3. Продолжить установку с выбором необходимых параметров (далее процедура не отличается от стандартной процедуры установки без использования LVM):

      1. Выбрать диск для разметки:
      2. Выбрать способ разметки диска (для примера - автоматическая разметка с размещением всех файлов в одном дисковом разделе):


      3. Проверить параметры разметки, и подтвердить внесение изменений на диск:

        Warning
        Дисковый раздел для размещения каталога /boot по умолчанию создаётся с размером 254МБ, что может в дальнейшем оказаться недостаточным для установки дополнительных ядер. Для предотвращения возможных проблем с установкой обновлений рекомендуется сразу увеличить размер этого раздела по крайней мере до 512МБ.

    4. После завершения разметки дисков продолжить установку в обычном порядке. Все необходимые пакеты будут установлены автоматически.

    Проверка успешности установки LVM

    Проверить наличие LVM можно командой просмотра списков групп томов:

    Command
    Titlesudo vgs

    VG       #PV #LV #SN Attr   VSize  VFree
    astra-vg 2   4   2   wz--n- 37,75g 12,00g

    В примере выше сообщается о наличии группы томов astra-vg с общим размером 37.75GB, в том числе 12ГБ свободного пространства (Имя astra-vg выбирается по умолчанию при стандартной установке ОС).

    Так же проверить наличие LVM можно командой просмотра списков логических томов, например:

    Command
    Titlesudo lvs

    LV      VG       Attr       LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
    lvsnap  astra-vg swi-a-s--- 4,00g      root   79,20
    lvsnap2 astra-vg swi-a-s--- 4,00g      root   75,78
    root    astra-vg owi-aos--- 15,76g
    swap_1  astra-vg -wi-ao---- 2,00g

    В примере выше сообщается о наличии томов root и swap_1 (создаются автоматически при установке "по умолчанию"), и о наличии двух моментальных снимков логического тома root (см. параметр Origin) с именами lvsnap и lvsnap2, заполненных на 79.20% и 75.78%.

    Применение LVM для отката изменений

    Warning
    Моментальные снимки делаются в ту же группу томов, в которой находится сохраняемый том, соответственно в этой группе томов должно быть достаточно свободного места.

    Добавление свободного пространства

    Если при установке системы при разметки дисковых разделов не было зарезервировано свободное место, можно подключить и добавить в группу новый накопитель или дисковый раздел. Например, добавим накопитель /dev/sdb:

    Command
    sudo pvcreate /dev/sdb

    Проверить список используемых физических томов можно командой:

    Command
    Titlepvs

    PV        VG       Fmt Attr PSize  PFree
    /dev/sda5 astra-vg lvm2 a-- 17,76g 0
    /dev/sdb  astra-vg lvm2 a-- 20,00g 12,00g

    В примере выше представлены два физических тома (том /dev/sda5, являющийся дисковым разделом (создан автоматически при установке системы), и том /dev/sdb, являющийся устройством, и добавленный после установки системы. При этом оба тома входят в группу томов astra-vg).

    После создания физического тома его нужно добавить в какую-либо группу томов (фактически - расширить группу томов на новый физический том), например, добавим созданный физический том в созданную при установке группу томов vg-astra:

    Command
    sudo vgextend astra-vg /dev/sdb

    Создание моментального снимка

    Моментальный снимок можно создать командой:

    Command
    sudo lvcreate -L 4GB -s -n lvsnap /dev/astra-vg/root

    Где:

    • -L 4GB - размер пространства, отводимого под снимок.
    Info

    Моментальный снимок не является копией диска, а содержит только изменения после момента создания диска. Поэтому:

    • Снимок создаётся быстро, практически моментально;
    • Размер места, назначаемого для размещения снимка, не зависит от размеров сохраняемого носителя, а зависит только от количества вносимых изменений;
    • Место, отведённое под снимок, расходуется по мере внесения изменений;

    При установке обновлений вносится значительное количество изменений. В качестве примера: при написании этой статьи при установке Update 3 на ранее не обновлявшуюся ОС СН Смоленск с минимальной конфигурацией ПО из отведённых  под снимок 4ГБ было израсходовано 79%.  Очевидно, при этом количество изменений зависит от набора установленного ПО (чем больше ПО - тем больше изменений), и от наличия ранее установленных обновлений (если были установлены предыдущие обновления - то изменений будет меньше).

    • -s - команда выполнения снимка состояния;
    • -n lvsnap - имя создаваемого логического тома со снимком (lvsnap);
    • /dev/astra-vg/root - имя сохраняемого тома (см. выше примеры команд, выводящих списки томов).

    Info

    Для предупреждения отказов записи из-за переполнения области снимка в настройках LVM предусмотрена возможность автоматического увеличения размеров логических томов по мере их заполнения, для чего в файле /etc/lvm/lvm.conf предусмотрены параметры:

    • snapshot_autoextend_treshold = 100 - величина в процентах, указывающая, при каком заполнении тома производить его автоматическое увеличение. По умолчанию установлена величина 100%, т.е. автоматическое увеличение отключено;
    • snapshot_autoextend_percent = 20 - величина, указывающая, на сколько процентов автоматически увеличивать том.


    Warning
    При переполнении пространства, отводимого под снимок, запись на диск будет запрещена. Логический том может увеличиваться автоматически, но для этого должно иметься свободное место в содержащей этот логический том группе томов. Группа томов автоматически увеличиваться не может.


    Откат изменений

    1. Для отката изменений следует перезагрузить компьютер, например, с Live-образа Орёл (или с отдельного дискового раздела, если такой раздел предусмотрен в системе).

    2. При загрузке со стандартного Live-образа Орёл понадобится установить пакет lvm2, для чего:
      1. При работе в открытой сети:
        1. Если в сети не настроено автоматическое назначение параметров сетевых подключений, то вручную настроить подключение к сети (в частности, указать в настройках сетевого подключения сервер DNS, например 8.8.8.8) и перезапустить службу сети, чтобы это изменение настройки  вступило в силу;

        2. В файле /etc/apt/sources.list раскомментировать строку с указанием репозитория;

        3. Обновить репозиторий и выполнить установку:

          Command
          sudo apt update
          sudo apt install lvm2


      2. При работе в закрытой сети выполнить установку пакета lvm2 в соответствии с принятыми в этой сети правилами работы.

    3. Восстановить состояние системы из снимка /dev/astra-vg/lvsnap:

      Command
      sudo lvconvert --merge /dev/astra-vg/lvsnap


    4. Перезагрузить систему с основного диска. В процессе перезагрузки состояние сохранённого накопителя будет восстановлено. При этом использованный для восстановления снимок будет удалён, а система будет загружена с состоянием сохранённого накопителя, восстановленным на момент снятия снимка.




    Warning
    Внимание! Загрузочный дисковый раздел /boot НЕ ДОЛЖЕН находиться на диске LVM.
    При установке ОС Astra Linux с параметрами "по умолчанию" это правило будет выполнено автоматически, при ручных настройках следует выделить для размещения загрузочных данных отдельный дисковый раздел.


    Note

    Внимание! Если предполагается в дальнейшем сохранять снимки состояния системы, то при разметке дисковых разделов рекомендуется предусмотреть свободное место для размещения этих снимков (не обязательно, так как в дальнейшем можно подключить и использовать дополнительные накопители).

    Можно также зарезервировать отдельный загрузочный раздел, чтобы загружаться с него для восстановления системы из сделанных снимков (на него понадобится установить отдельный экземпляр ОС).