Проблемма с корнем на MDADM+LVM2
SOFTSKY 18 апреля, 2010 - 16:45
все делал по ману: http://www.gentoo.org/doc/en/gentoo-x86+raid+lvm2-quickinstall.xml
в ядре включил:
Multi-device support (RAID and LVM) ---> [*] Multiple devices driver support (RAID and LVM) <*> RAID support < > Linear (append) mode (NEW) <*> RAID-0 (striping) mode <*> RAID-1 (mirroring) mode < > RAID-10 (mirrored striping) mode (EXPERIMENTAL) (NEW) < > RAID-4/RAID-5 mode (NEW) < > RAID-6 mode (NEW) < > Multipath I/O support (NEW) < > Faulty test module for MD (NEW) <*> Device mapper support < > Crypt target support (NEW) < > Snapshot target (EXPERIMENTAL) (NEW) < > Mirror target (EXPERIMENTAL) (NEW) < > Zero target (EXPERIMENTAL) (NEW) < > Multipath target (EXPERIMENTAL) (NEW) < > Bad Block Relocation Device Target (EXPERIMENTAL) (NEW)
собираю
genkernel --lvm --mdadm --bootloader=grub --menuconfig all
/etc/lvm/lvm.conf
devices { dir="/dev" scan="/dev" filter="a|/dev/md.*|" }
initramfs поднимает модули, потом вижу:
mdadm: /dev/md2 has been started with 2 drives mdadm: /dev/md3 has been started with 2 drives
(пока все правильно)
>>Scanning for Volume Groups Reading all physical volumes. This may take a while... No volume groups found No volume groups found
вот тут грабли
Когда гружусь с liveusb, поднимаю md2,md3 руками, делаю: vgscan - не видит нифига
когда делаю
pvscan vgscan vgchange -ay
- все видно. на сколько я понял pvscan не сунется в initrd, только vgscan и vgchange (они то и не видят физических томов на mdX почему то). могу засунуть pvscan руками, но енто грабли. хочу решить по человечески. кто в курсе?
да, и еще. когда init не находит корня, захожу в shell
руками делаю vgscan - получаю есесьно
>>Scanning for Volume Groups Reading all physical volumes. This may take a while... No volume groups found
»
- Для комментирования войдите или зарегистрируйтесь
А в загрузчике прописан
А в загрузчике прописан параметр dolvm?
да. иначе подымать тома
да. иначе подымать тома вообще не стало бы.
Старая версия LVM
Пользуюсь Calculate Linux Desktop 10.4. Решил перенести систему на шифрованный раздел с LVM и столкнулся с похожей проблемой. Похоже проблема в том, что lvm, помещаемый в initrd версии 2.02.28 от 2007г, иначе как объяснить, что если извлечь из initrd lvm
и запустить сканирование с его помощью то получим
Тоже самое, но запуская установленный в системе LVM
Initrd создавал с помощью genkernel приблизительно так:
ключевое здесь
--lvm
. Ядро не пересобил, т.к. оно меня устраиваль (нужные мне модули присутствовали). В man genkernel сказано, что при использовании --lvm добавляется поддержка LVM из статически скомпилированного бинарника, если последний существует в системе, или компилируется статический бинарник, если такой в системе не существует. К сожалению genkernel ищет файл с именем lvm, а статически скомпилированный имеет имя lvm.static, что приводит к компиляции последнего из исходников. Genkernel использует кеш /var/cache/genkerel/src/ где и находятся нужные файлы. Возможные пути решения:1. В /etc/genkernel.conf указать нужную версию LVM (у меня это не заработало, компиляция завершалась с ошибкой)
2. Создать ссылку с именем lvm на lvm.static в /sbin, предварительно переименовав оригинальный lvm
3. Заархивировать файл /sbin/lvm.static и поместить архив в /var/cache/genkernel под именем LVM2.2.02.28-x86.tar.bz2 (смотрите /etc/genkerel.conf чтобы точно определить имя файла) и запустить genkernel ещё раз (это должно сработать, т.к. genkernel кеширует результат компиляции, и не производит её повторно, если в кеше есть нужные файлы, главное указать правильное имя)
После этого я смог загрузиться с зашифрованного раздела с LVM.
Удачи!!!
P.S. Это всего лишь подсказка, в каком можно действовать направлении и не является точной инструкцией решения проблемы в конкретном случае.
BINGO! Самое оно! :) Все
BINGO! Самое оно! :) Все заработало.... Спасибо огромное. 2 дня убил в поисках...
Так в чем собственно отличие между 2.02.28 и 2.02.56?
И еще... Надо бы разобраться в том, чтобы 2.02.56 тоже с исходников собиралось..
Покажи параметры ядра. Лично
Покажи параметры ядра. Лично у меня:
kernel /boot/kernel-genkernel-x86-2.6.32-gentoo-r7 dolvm real_root=/dev/mapper/raid-root lvmraid=/dev/md2
проблемма была в версии lvm2.
проблемма была в версии lvm2. читай выше. я решил уже все.
http://gentoo.ru/node/17508 —
http://gentoo.ru/node/17508 — оно?
Все равно покажи опции ядра. интересно :)
dolvm, domdadm - фсьо :)
dolvm, domdadm - фсьо :)
title=Gentoo Linux
если уж быть предельно точным
а у меня просто с domdadm не
а у меня просто с domdadm не работает, приходится добавлять обязательно lvmraid=/dev/md2, ЧЯДНТ?
cheerfulboy
корень проблеммы тот же. солушын тот же, только проблемма другая.