Назад | Перейти на главную страницу

Можно ли на лету изменить размер смонтированного раздела LVM?

Ситуация: у нас есть сервер с 40 ГБ SAN (Fibre Channel), смонтированный как / opt / application.

Если LUN расширен до 60 ГБ, что нужно сделать, чтобы расширить / opt / application на RHEL-сервере до 60 ГБ, имея только 1 раздел LVM?

Один из вариантов - добавить второй раздел LVM с помощью fdisk и использовать lvextend для добавления этого раздела, но что, если мы хотим придерживаться одного раздела LVM на диске?

Как лучше всего расширить LUN с 40 ГБ до 60 ГБ? При необходимости возможно размонтирование, это лучше, чем добавление второго раздела LVM и использование lvextend.

Я предполагаю, что ваш основной PV многоплановый.

  • Просмотр таблицы разделов LUN в точных секторах
    fdisk -ul /dev/mpathX

  • Повторно просканируйте LUN
    echo в rescan или issue_lip, или беги rescan-scsi-bus.sh, или как вы это делаете

  • Убедитесь, что блочное устройство теперь имеет больший размер
    fdisk -ul /dev/mpathX

  • Отредактируйте таблицу разделов
    fdisk -u /dev/mpathX

  • Удалите раздел, заново создайте раздел с тем же начальным сектором, но с новым конечным сектором, который достигает нового конца большего блочного устройства.

    Если ваш раздел начинается с раннего сектора, такого как 63, но fdisk позволит вам запустить раздел только с 2048 или более поздней, затем создайте раздел, начинающийся с 2048 года, затем перейдите в «экспертный режим» и «переместите начало данных» обратно на 63.

  • Размонтируйте вашу файловую систему
    umount /opt/application

  • Установите VG в неактивное состояние
    vgchange -an /dev/mapper/vg-lv

  • Система распознает новую таблицу разделов
    partprobe /dev/mpathX

  • Увеличьте PV до нового размера раздела
    pvresize /dev/mpathX

  • Установите VG активным
    vgchange -ay /dev/mapper/vg-lv

  • Измените размер LV и его базовой файловой системы
    lvresize -r -l+100%FREE /dev/mapper/vg-lv

  • Смонтируйте файловую систему и подтвердите ее новый размер
    df -h /opt/application

Отказ от ответственности: насколько мне известно, это правильные шаги. Сделайте резервную копию. Выполните тестовый запуск в своей среде разработки, прежде чем доверять свои производственные данные какому-нибудь случайному интернет-комментатору на Serverfault.