LINUX.ORG.RU
ФорумAdmin

Проблема с партициями на LVM

 


0

2

Доброго времени!

В руки выдали машину, на которой LVM-ом объединены несколько дисков в один. LV c именем pg занимает весь объем VG с именем stor (т.е. вольюм единственный). Но есть нюанс - поверх такого вольюма натянут обычный линуксовый раздел. Вывод fdisk -l показывает и диск и раздел:

Disk /dev/mapper/stor-pg: 13,44 TiB

…..

Device Start End Sectors Size Type

/dev/mapper/stor-pg1

Все работает норм, но после перезагрузки видим другую картину:

Disk /dev/mapper/stor-pg: 13,44 TiB …..

Device Start End Sectors Size Type

/dev/mapper/stor-pg-part1

Подмонтировать устр-во /dev/mapper/stor-pg-part не получается - вываливается ошибка: Can’t lookup blockdev и действительно в каталоге /dev/mapper есть только /dev/mapper/stor-pg

При этом все с ЛВМ нормально. Никакие vgchange -ay не помогают, т.к. ЛВМ при рестарте и так собирается отлично и без нареканий.

Решается проблема одной командой partprobe. Тут же появляется раздел /dev/mapper/stor-pg1 и прекрасно монтируется.

Понятно, что применение линуксовой партиции на ЛВМ спорное решение, но уже есть и особо не заменишь. Может есть какое-то решение, чтобы при перезагрузке ядро нашло пропавший раздел?

Благодарю за помощь.



Последнее исправление: alex-123 (всего исправлений: 3)

Я, когда полнодисковое шифрование заводил, столкнулся с тем же. GPT-разделы поверх LUKS без partprobe не заводятся. На Manjaro/Arch-е, mkinitcpio штампует initrd с busybox внутри. В busybox тоже есть partprobe, но он ругается на отображённые блочные устройства - ему реальные подавай. Единственное решение, что я нашёл - написать кастомный хук, протаскивающий в initrd partprobe из основной системы, и применяющий его для обнаружения партиций на размапленных устройствах. Но, всё же отказался от этого решения, в пользу LVM поверх LUKS. В Вашем случае, может помочь что-то подобное, хотя, имхо, лучше не раскладывать грабли, а просто временно перенести файлы на другой накопитель, удалить разметку на логическом томе, и развернуть фс непосредственно на нём.

QsUPt7S ★★
()
Последнее исправление: QsUPt7S (всего исправлений: 3)
Ответ на: комментарий от no-dashi-v2

Насколько я понял, у ТС вся заковырка в том, что ему нужно автоопределение партиции в раннем пользовательском пространстве, а не после полной загрузки. В противном случае, написать соответствующий сервис, вероятно, труда бы не составило.

QsUPt7S ★★
()

Если некуда забекапить, а потом разбекапить, скукожь фс на /dev/mapper/stor-pg-part1, потом скукожь раздел /dev/mapper/stor-pg-part1, потом скукожь том /dev/mapper/stor-pg, на освободившемся месте создай ещё один том и сливай туда данные. Но очень осторожно, одно неловкое движение, и ты всё потерял.

Black_Shadow ★★★★★
()
Последнее исправление: Black_Shadow (всего исправлений: 1)
Ответ на: комментарий от Black_Shadow

Раздела /dev/mapper/stor-pg-part1 реально нет. Я не знаю почему ядро так именует это устройство. Реально к нему обратится нельзя. Только через партпроб видимо ядро перечитывает имеющиеся разделы появляется устро-во /dev/mapper/stor-pg1 и с ним уже можно работать.

alex-123
() автор топика
Ответ на: комментарий от no-dashi-v2

Правило udev сделал. После перезагрузки я получаю правильное наименование раздела /dev/mapper/stor-pg1 и могу с ним работать. Но скажем добавить монтирование этого раздела в fstab не получается - нет нужного раздела. Видимо монтирование разделов в /etc/fstab срабатывает ранее, чем обработка правил udev в /etc/udev/rules.d Думаю, нужно какой-то другой подход. Может в юните, которые генерит сюсктл при обработке фстаба прописать запуск партпроб.

alex-123
() автор топика