Bug 11284

Summary: if root is on md device, it should be used in boot= as well
Product: Sisyphus Reporter: Michael Shigorin <mike>
Component: alterator-install2Assignee: Alexey Gladkov <legion>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: normal    
Priority: P2    
Version: unstable   
Hardware: all   
OS: Linux   
Bug Depends on:    
Bug Blocks: 17613, 17615    

Description Michael Shigorin 2007-03-31 15:10:49 MSD
При установке / на raid1 хорошо бы автоматически выбрать boot=/dev/mdX (в
эквиваленте) _и_ выставить raid-extra-boot сразу в mbr-only.

В 20070330 получилось так: при md0 из hd[ab]1 в RAID1 alterator-bootloader
предложил установить загрузчик в hda; ручное указание md/md0 (это ж знать ещё
надо) привело к boot="UUID=..." в итоговом lilo.conf.  Может, так и задумано, но
комбинация указания md device и raid-extra-boot=mbr-only позволяет автоматически
писать загрузчик в MBR всех дисков, входящих в указанный массив, и затем
загружаться с любого из них.

Вот лог с #altlinux:

---
<lioka> gvy: про / на md и 'со второго блина не загрузилось': это при boot= чему ?
<gvy> lioka, ммм... ты про ночное письмо?
<gvy> со второго блина qemu не смог
<gvy> надо на железе попробовать
<gvy> boot=UUID
<lioka> gvy: а если не умничать и /dev/md0 там указывать ? бо у меня при
raid-extra-boot=mbr и boot=/dev/md0 грузилось с любого из блинов в любом из hdx
<lioka> gvy: и есть подозрения, что uuid там мешает
<gvy> lioka, а!  boot в alterator-bootloader был изначально hda, я руками сказал
md/md0 (в письме упоминал)
<gvy> это root=UUID
<lioka> gvy: я видел в lilo.conf в сиссеме как раз boot=uuid
<lioka> gvy: по состоянию на позавчера, 0330 не пробовал
<gvy> lioka, гррм.  а указание md/md0 будто было проигнорировано, "md0" в
/etc/lilo.conf не значится
<gvy> пойду развешу, как грозился
<lioka> gvy: развесь, развесь. заодно полезно было бы намекнуть, что md/md0
несколько необычно
<gvy> угу
<gvy> lioka, на самом деле я пока не соображу, как именно посмотреть, что корень
на md и соответственно поправить предлагаемое значение
<lioka> gvy: нуу, есть путей. я в /vm рисую кусок fstab с uuid, есть в
/proc/mdstat есть нечто, имеющее uuid, совпадающее с uuid / -- его и нужно рисовать
<gvy> lioka, да нетути там никаких uuid, mdX и всё
<gvy> в mdstat
<lioka> gvy: поскольку при raid1 из двух блинов один и тот же uuid имеют пять
блочных устройств -- два раздела, два dm-* и собссно md*
<gvy> lioka, btw а при raid0?
<lioka> gvy: нетути. но сказать blkid на те md*, что в mdstat, ничто не мешает
Steps to Reproduce:
1. ставим 20070330 с корнем на software raid1
2. смотрим /etc/lilo.conf
Actual Results:  
raid-extra-boot по умолчанию не используется

Expected Results:  
raid-extra-boot задействован без дополнительных нетривиальных действий
Comment 1 Alexey Gladkov 2007-03-31 15:45:29 MSD
Это моё
Comment 2 Michael Shigorin 2007-03-31 16:55:48 MSD
Да, отображать это было бы очень хорошо в главном диалоге Bootloader setup,
отметив все диски, на которых расположен массив с корнем (по которым и надо
разбросать MBR-ы).

Также заметил, что если оставить в дополнительных настройках предложенный hda,
но выбрать Raid-extra-boot "mbr-only", получим:

Lilo test: Fatal: Not a RAID install,
'raid-extra-boot=' not allowed

При этом отменить выбор опции не получилось даже очисткой вручную -- "none"
приводит к той же ошибке.  Изначально поле было пустым; может, добавить пустой
пункт в список или при выборе "none" _не_ писать строчку raid-extra-boot в
lilo.conf вообще?  Сейчас, ткнувшись сюда, приходим к необходимости знать не
только про [/dev/]md0, но и про [/dev/evms/]md/md0 (reset и normal mode будто не
сбрасывают "до упора"?).

Галка "пропустить установку загрузчика" сработала только после нажатия на
"Обычный режим" -- кнопка "Далее" игнорировалась (у Большакова где-то был диалог
-- "you have found a secret place" :).
Comment 3 Alexey Gladkov 2007-04-04 17:57:44 MSD
(In reply to comment #2)
> Да, отображать это было бы очень хорошо в главном диалоге Bootloader setup,
> отметив все диски, на которых расположен массив с корнем (по которым и надо
> разбросать MBR-ы).

Добавлено определение ситуации когда "/" или "/boot" на raid1. В этом случае по
умолчанию в списке выбирается md и прописывается raid-extra-boot="mbr-only".

> Также заметил, что если оставить в дополнительных настройках предложенный hda,
> но выбрать Raid-extra-boot "mbr-only", получим:

Исправлено.

> Галка "пропустить установку загрузчика" сработала только после нажатия на
> "Обычный режим" 

Исправлено.
Comment 4 Michael Shigorin 2007-04-04 18:38:12 MSD
Спасибо!
Comment 5 Michael Shigorin 2007-04-07 23:16:59 MSD
Замечательно работает.