Логические тома не активируются при загрузке.

Вопрос или проблема

Ubuntu 22.04.1 здесь. У меня есть группа томов под названием system, созданная во время установки. В этой группе три логических тома.

  --- Логический том ---
  Путь к томам          /dev/system/swap
  Имя тома             swap
  Имя группы томов     system
  UUID тома            qeGYCG-PseM-IzIW-rpit-0zwI-lbKs-q0jL8D
  Доступ к записи      чтение/запись
  Хост создания, время ubuntu-server, 2022-12-02 19:20:46 +0000
  Статус тома          НЕДОСТУПЕН
  Размер тома          1,00 GiB
  Текущий LE           256
  Сегменты             1
  Выделение            наследование
  Секторы предчтения   авто
   
  --- Логический том ---
  Путь к томам          /dev/system/root
  Имя тома             root
  Имя группы томов     system
  UUID тома            qx6W1r-e20x-VfwG-1Sdg-uGE3-rRW9-89k24O
  Доступ к записи      чтение/запись
  Хост создания, время ubuntu-server, 2022-12-02 19:20:47 +0000
  Статус тома          доступен
  # открыто            1
  Размер тома          10,00 GiB
  Текущий LE           2560
  Сегменты             1
  Выделение            наследование
  Секторы предчтения   авто
  - в настоящее время установлено 256
  Блочное устройство     253:0
   
  --- Логический том ---
  Путь к томам          /dev/system/drbd
  Имя тома             drbd
  Имя группы томов     system
  UUID тома            rQxv3f-pJds-JU1z-9Hqd-hi81-3kAt-zlcVbh
  Доступ к записи      чтение/запись
  Хост создания, время ubuntu-server, 2022-12-02 19:20:49 +0000
  Статус тома          НЕДОСТУПЕН
  Размер тома          <21,00 GiB
  Текущий LE           5375
  Сегменты             1
  Выделение            наследование
  Секторы предчтения   авто

Это вывод команды lvdisplay сразу после перезагрузки. При каждой перезагрузке логические тома swap и drbd не активируются. Мне нужно использовать команду vgchange -ay, чтобы активировать их вручную. Только логический том root доступен, на этом томе установлена система. Добавление имен томов в auto_activation_volume_list в /etc/lvm/lvm.conf не помогает.

Почему это происходит?

Обновление #1

Я попытался воссоздать логический том. Сначала я удалил том swap, затем воссоздал его с другим именем. Всё равно та же проблема после перезагрузки. Том не активируется до vgchange -ay.

Так что не уверен, поможет ли это кому-то в будущем (или настоящем), но я наткнулся на это, пытаясь исправить эту конкретную проблему. Я не смог определить коренную причину того, почему логические тома не активируются при загрузке, но подозреваю, что это связано с использованием lvm raid.

Я решил проблему, создав файл юнита systemd согласно следующему.

Создайте файл юнита systemd следующим образом:

nano /etc/systemd/system/lvm2-activate.service

Добавьте следующее содержание:

[Unit]
Description=Активировать все LV VG0
Requires=dm-event.socket
After=lvm2-monitor.service
Before=local-fs-pre.target shutdown.target
DefaultDependencies=no

[Service]
Type=oneshot
Environment=LVM_SUPPRESS_LOCKING_FAILURE_MESSAGES=1
ExecStart=/usr/sbin/lvchange -ay vg0
RemainAfterExit=yes

[Install]
WantedBy=sysinit.target

Сохраните и активируйте новый файл юнита:

systemctl daemon-reload
systemctl enable lvm2-activate

Перезагрузите систему, и это должно активировать логические тома в подходящее время в процессе загрузки (т.е. перед тем, как файловая система монтируется из fstab, что в противном случае могло бы зависнуть систему на очень долгое время)

Ответ или решение

Проблема активации логических томов при загрузке в Ubuntu 22.04.1

Ваша проблема заключается в том, что логические тома (ЛТ) swap и drbd не активируются автоматически при загрузке системы, в то время как логический том root работает корректно. Это может быть связано с особенностями конфигурации вашей системы или с используемыми вами технологиями, такими как LVM RAID.

Возможные причины проблемы

  1. Настройки LVM:
    Дефолтные параметры конфигурации LVM могут не обеспечивать активацию всех логических томов при загрузке. Вы правильно заметили, что добавление имен томов в auto_activation_volume_list в /etc/lvm/lvm.conf не решило проблему.

  2. Состояние логических томов:
    Если логические тома swap и drbd по какой-то причине не доступны (статус NOT available), это может быть связано с тем, что они не были созданы или инициализированы должным образом в процессе установки или настройки.

  3. Отсутствие нужных сервисов:
    Если ваш сервер использует lvm raid, это может препятствовать автоматической активации томов, так как может потребоваться ожидание инициализации всех RAID-устройств.

Решение проблемы

Как вы уже выяснили, создание unit-файла для systemd — это рабочее решение. Следуя этому подходу, вы можете обеспечить активацию логических томов в нужное время загрузки, избегая зависаний системы при монтировании файловых систем. Давайте подробнее рассмотрим этот процесс.

Создание и настройка unit-файла

  1. Создание unit-файла:
    Используйте текстовый редактор для создания файла:

    sudo nano /etc/systemd/system/lvm2-activate.service
  2. Добавление содержимого:
    Вставьте следующий код:

    [Unit]
    Description=Activate all the VG0 LVs
    Requires=dm-event.socket
    After=lvm2-monitor.service
    Before=local-fs-pre.target shutdown.target
    DefaultDependencies=no
    
    [Service]
    Type=oneshot
    Environment=LVM_SUPPRESS_LOCKING_FAILURE_MESSAGES=1
    ExecStart=/usr/sbin/lvchange -ay vg0
    RemainAfterExit=yes
    
    [Install]
    WantedBy=sysinit.target
  3. Сохранение и активация unit-файла:
    После внесения изменений сохраните файл и активируйте его:

    sudo systemctl daemon-reload
    sudo systemctl enable lvm2-activate
  4. Перезагрузка системы:
    Теперь можно перезагрузить систему, чтобы проверить, решена ли проблема:

    sudo reboot

Заключение

Использование systemd для автоматизации активации логических томов на этапе загрузки является эффективным решением для вашей ситуации. Такой подход позволяет избежать ручных операций и обеспечивает стабильность и надежность вашей серверной инфраструктуры.

Если после выполнения этих шагов проблема сохраняется, возможно, стоит обратить внимание на более глубокую диагностику конфигурации LVM и состояния RAID, используемого в вашей системе. Убедитесь, что все аппаратные и программные компоненты функционируют корректно, чтобы исключить потенциальные сбои в работе.

Оцените материал
Добавить комментарий

Капча загружается...