LINUX.ORG.RU
решено ФорумAdmin

Ломается загрузка при перемещении LVM на /dev/md

 ,


0

1

Всем привет,

Имеется следующая разметка FS:

/dev/sda
  /dev/sda1
  /dev/sda2
  /dev/sda3
    /pve-swap
    /pve-root    /
    /pve-data

/dev/sdb
  /dev/sdb1
  /dev/sdb2      /boot/efi
  /dev/sdb3
    /dev/md0     /boot
  /dev/sdb4
    /dev/md1

При такой конфигурации система грузится и все работает нормально.

Стоит задача привести систему к виду (диск /dev/sda должен остаться чистым для последующего включения в raid1):

/dev/sda
  /dev/sda1
  /dev/sda2
  /dev/sda3

/dev/sdb
  /dev/sdb1
  /dev/sdb2      /boot/efi
  /dev/sdb3
    /dev/md0     /boot
  /dev/sdb4
    /dev/md1
      /pve-swap
      /pve-root    /
      /pve-data

Делаю следующие манипуляции:

pvcreate /dev/md1
vgextend pve /dev/md1
pvmove /dev/sda3 /dev/md1
vgreduce pve /dev/sda3
pvremove /dev/sda3
update-initramfs -u && update-grub

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

Насколько я понимаю модуль lvm в grub загружен раз оно грузится при том что / на LVM находится изначально. Бьюсь уже второй день, пока что переставляю систему чтобы попробовать вот это:

echo "BOOT_DEGRADED=true" > /etc/initramfs-tools/conf.d/mdadm 

bootdegraded=1 в GRUB_CMDLINE_LINUX

/etc/mdadm/mdadm.conf также обновлен с данными raid при этом update-initramfs -u делаю постоянно.

Подскажете куда еще смотреть?


Ответ на: комментарий от mord0d

Это работать не будет.

В настоящий момент работает, почему бы ему не работать если указано что –metadata=0.9?

Проблема появляется когда /dev/mapper/pve-root (/) передвигается на /dev/md1.

alex07 ()
Ответ на: комментарий от anc

Очень сильно в небо UUID, проверьте, до и после включая fstab.

Извините, ничего не понял.

Вот содержимое моего /etc/fstab:

# <file system> <mount point> <type> <options> <dump> <pass>                                                        /dev/pve/root / ext4 errors=remount-ro 0 1
UUID=6d3ace0c-ef82-4253-a3a7-659ebc978916 /boot ext4 defaults 0
0
UUID=5CDC-3B02 /boot/efi vfat defaults 0 1
/dev/pve/swap none swap sw 0 0
proc /proc proc defaults 0 0

И оно загружается без проблем, ровно до того момента пока я не передвину /dev/mapper/pve-root на /dev/md1. При этом /etc/fstab я не трогаю совершенно.

alex07 ()
Ответ на: комментарий от alex07

1. UUID ещё и в грабе.
2. /dev/pve/root и /dev/mapper/pve-root тоже разные «названия».
ЗЫ У хостера нет возможности в kvm что бы посмотреть реальность? Если нет, можно проверить «на кошках» скопировать в виртуалку и там тестировать.

anc ★★★★★ ()
Ответ на: комментарий от anc
  1. UUID ещё и в грабе.

Нет, вы ошибаетесь, в данном случае речь про /etc/fstab.

ЗЫ У хостера нет возможности в kvm что бы посмотреть реальность?

Хостер Хецнер, так что нет, во всяком случае не сегодня.

Если нет, можно проверить «на кошках» скопировать в виртуалку и там тестировать.

Ну вот видимо этим и придется заниматься.

alex07 ()
Ответ на: комментарий от anc

Я вот что еще заметил, если загрузиться в rescue то файл /boot/grub/grub.cfg имеет строку:

set root='lvmid/MiU7cz-xzIX-ogcS-LDBB-ZU6C-XGOu-b90WYk/PkOteg-2TJ9-1Fy2-jP0I-XMVV-9Xts-30c03J'

При этом:

MiU7cz-xzIX-ogcS-LDBB-ZU6C-XGOu-b90WYk -- правильный volume group
PkOteg-2TJ9-1Fy2-jP0I-XMVV-9Xts-30c03J -- правильный logical volume

Но разве не надо еще при этом physical volume указывать?

alex07 ()
Ответ на: комментарий от alex07

На каком этапе происходит сбой.

Загрузчик стартует или нет.

Ядро грузится или нет.

Если загрузчик стартует и ядро загружается в память вместе с initramfs, то претензий к этапу работы загрузчика нет.

В таком случае нужно смотреть, что в параметрах ядра правильно указан корень и параметры ядра для поднятия raid и lvm, если они нужны, смотрите документацию по вашему дистрибутиву.

Как минимум в initramfs должны присутствовать модули для поднятия mdadm и lvm. Для mdadm также должен присутствовать /etc/mdadm.conf.

lvm должен запускаться после поднятия сборки RAID.

И возможно, про UUID файловых систем вам говорили правильно.

Вот как вы их переносили в LVM тома, созданные поверх RAID? UUID файловой системы мог и поменяться.

Почитайте как происходит процесс запуска Linux, а то сейчас у вас не хватает понимания.

anonymous ()

опция ядра в grub: rd.auto=1

anonymous ()
Ответ на: комментарий от anonymous

Все в порядке.

В итоге я загрузился в qemu и через VNC сделал debug.

Все дело было в том что по какой то причине надо было снова делать grub-install на обоих дисках. Простой update-grub не апдейтил инфу о RAID в загрузке.

Отмечаю тему как решенную.

alex07 ()
Ответ на: комментарий от anonymous

Если у вас не стартовал загрузчик, то и надо об этом было сказать.

Да я бы с радостью, только вот сервер в Хецнере, пока не смонтировал диск в QEMU и не посмотрел глазами через VNC это было весьма не очевидно.

alex07 ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.