Bug 6747

Summary: hdb install breaks hda bootloader
Product: Sisyphus Reporter: Michael Shigorin <mike>
Component: installerAssignee: Alexey Gladkov <legion>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: major    
Priority: P2 CC: antohami, boyarsh, combr, kirill, klark, lakostis, ldv, mike, mithraen, rider, ruslandh, sem, vsu, vvzhy, zerg
Version: unstable   
Hardware: all   
OS: Linux   
Bug Depends on: 15605    
Bug Blocks: 7079, 7371    

Description Michael Shigorin 2005-04-29 22:58:34 MSD
Воткнул один IDE (hda), встал, проверил -- бутаемся и работаем.
Воткнул рядом второй hdb, встал, загрузчик на hdb, init3 OK,
а вот загрузиться с него BIOS не смог.  Это KT600, т.е. не 
древний.

При этом загрузчик на hda тоже слетел.
Comment 1 Roman Medyakov 2005-05-18 07:22:59 MSD
Такая же беда. После установки системы и загрузчика на hdb невозможно с него
загрузиться. Выдаёт пол-экрана "01 01 01 ..."
Comment 2 Sergey V Turchin 2005-06-08 18:16:36 MSD
to manteiner 
Comment 3 Sergey V Turchin 2005-06-08 18:17:45 MSD
*** Bug 6801 has been marked as a duplicate of this bug. ***
Comment 4 Dmitry V. Levin 2005-06-10 20:44:50 MSD
Это документированное поведение lilo.
Comment 5 Michael Shigorin 2005-06-13 13:22:39 MSD
Значит, это должно быть документированным поведением ALT Linux 3.0 Compact, ну
или всё-таки исправлено.
Comment 6 Anton Farygin 2005-06-14 12:14:02 MSD
А эту ошибку как-то можно обойти ?
Comment 7 Mike Lykov 2005-06-14 12:46:16 MSD
а что насчет предлагаемых вариантов в баге 6801?  
хотя бы дискету загрузочную сделать можно в процессе инсталляции, чтобы с hdb 
1 раз загрузиться и lilo поправить/ загрузочный сектор снять? 
 
Comment 8 Anton Farygin 2005-06-14 16:45:15 MSD
как нужно поправить lilo, что бы нормально заработало на hdb ?
Comment 9 Michael Shigorin 2005-07-05 13:09:09 MSD
$  diff -u lilo.conf lilo.conf-hdb 
--- lilo.conf   2005-07-05 14:28:22 +0300
+++ lilo.conf-hdb       2005-07-05 14:38:32 +0300
@@ -1,3 +1,5 @@
+disk=/dev/hdb
+bios=0x80
 boot=/dev/hdb
 map=/boot/map
 vga=0x31a

спасибо lakostis :)

2 vsu: ещё комментарии будут или этого достаточно?
Comment 10 Michael Shigorin 2005-07-05 13:09:33 MSD
reassign
Comment 11 Anton Farygin 2005-07-05 13:23:11 MSD
Зерг, надо добавить это исправление.
Comment 12 Sergey Vlasov 2005-07-05 13:29:22 MSD
bios=0x80 верно для случая, когда загрузка со второго диска выбирается
средствами BIOS.

Кстати, в lilo ещё имеются проблемы с автоопределением номеров bios в случае
странноватых конфигураций - например, если на hda пусто (или есть cdrom), а диск
повешен куда-либо дальше (hdb, hdc...).
Comment 13 Michael Shigorin 2005-07-05 13:47:15 MSD
(In reply to comment #12)
> bios=0x80 верно для случая, когда загрузка со второго диска выбирается
> средствами BIOS.
А диагностика при "кривой" попытке какая-то будет?
Если без этого изменения -- то warning был насчёт не-первого диска.

Ну и про умения BIOS Костик что-то упоминал по ходу...
Comment 14 Sergey Vlasov 2005-07-05 14:13:58 MSD
(In reply to comment #13)
> А диагностика при "кривой" попытке какая-то будет?

Как обычно у LILO - 01 01 01...

> Если без этого изменения -- то warning был насчёт не-первого диска.

На самом деле установка на не-первый с точки зрения BIOS диск тоже имеет право
на существование (например, в случае, когда на первом диске стоит какой-то
менеджер загрузки, который может передать управление загрузочному сектору
другого диска без переключения нумерации дисков).  Только вот по умолчанию так
делать не стоит.
Comment 15 Michael Shigorin 2005-07-05 15:01:17 MSD
(In reply to comment #14)
> > А диагностика при "кривой" попытке какая-то будет?
> Как обычно у LILO - 01 01 01...
Не, я про вывод /sbin/lilo, а не загрузочного сектора ;-)

> > Если без этого изменения -- то warning был насчёт не-первого диска.
> На самом деле установка на не-первый с точки зрения BIOS диск тоже имеет право
> на существование (например, в случае, когда на первом диске стоит какой-то
> менеджер загрузки, который может передать управление загрузочному сектору
> другого диска без переключения нумерации дисков).  Только вот по умолчанию так
> делать не стоит.
Именно.  Это вообще можно отложить на ALM3.1 feature, поскольку advanced.
Comment 16 Anton Farygin 2005-08-04 11:57:08 MSD
У меня не воспроизвелось.
Comment 17 Pustovit Mikhail 2005-11-17 13:09:03 MSK
Воспроизвелось на rc10 при установке на hdd

hda - пусто
hdb - CDROM
hdc - CDROM

такая конфигурация получилась вследствие лени вытаскивать
основной винт с hda, просто отбросил шлейфы, а тестовый засунул
в карман который на hdd

Не грузимся, выдает на пол-экрана 01 01 01 ...
Comment 18 Anton Farygin 2005-11-17 13:18:11 MSK
Рецепт: 
загрузить в rescue
подмонтировать диск
прописать в lilo.conf:
disk=/dev/hdd
bios=0x80
Comment 19 Michael Shigorin 2005-11-24 15:04:06 MSK
LATER (3.1)?
Comment 20 Denis Smirnov 2005-11-29 22:16:57 MSK
У меня есть по крайней мере одна машина, куда я просто не смог поставить
Compact. Это роутер с флешкой, которая на hdc.

Для Compact это не критично, но для будущего мастера -- критично.
Comment 21 Sergey V Turchin 2005-11-30 14:05:07 MSK
(In reply to comment #20) 
> У меня есть по крайней мере одна машина, куда я просто не смог поставить 
> Compact. Это роутер с флешкой, которая на hdc. 
>  
> Для Compact это не критично, но для будущего мастера -- критично. 
Пока что до перезагрузки в config-bootoader можно указать порядковый номер 
диска для BIOS 
Comment 22 Michael Shigorin 2007-02-28 23:04:16 MSK
btw #8059 (на 2007xxxx ещё не успел проверить)
Comment 23 Sergey V Turchin 2007-03-01 15:32:46 MSK
to mantainer
Comment 24 Dmitry V. Levin 2007-03-08 20:47:26 MSK
Алексей, неплохо бы добавить в экспертном режиме возможность
редактировать disk= и bios=.
Comment 25 Alexey Gladkov 2007-03-08 20:56:43 MSK
Я не знаю пока как это сделать.
Comment 26 Anton Farygin 2007-03-09 13:06:44 MSK
Это сделано в alterator-bootloader от Зерг'а.

Работает, кстати, отлично!
Comment 27 Alexey Gladkov 2007-03-09 14:31:39 MSK
(In reply to comment #24)
> Алексей, неплохо бы добавить в экспертном режиме возможность
> редактировать disk= и bios=.

NOTE:  Use  of the 'bios=' option is largely obsolete beginning with LILO
version 22.5, as the boot loader now identifies disks by 32-bit Volume-ID, and
defers BIOS device code determination until boot time.

Проверьте воспроизводится ли эта бага на новом инсталлере (т.е. на новом lilo).
Comment 28 Alexey Gladkov 2007-04-06 20:52:43 MSD
Сейчас всё должно работать.
Comment 29 Michael Shigorin 2007-04-07 00:31:05 MSD
Постараюсь пройтись по qawanted в начале недели.
Comment 30 Michael Shigorin 2007-04-07 18:13:01 MSD
Да, по крайней мере в qemu именно установка на hdb при наличной и живой на hda
уже _не_ ломает её.  Правда, проверить то, что при этом загружается с hdb, у
меня не получается (но это проблема qemu), придётся не забыть на железе ещё.

Но то отдельный вопрос, этот закрыт.
Comment 31 Anton Farygin 2008-01-26 01:29:32 MSK
lilo теперь всё равно, под каким номером диск в системе.. по крайней мере у меня
на всех машинах это не воспроизволось.
Comment 32 Alexey Gladkov 2008-01-26 02:45:34 MSK
Ну я теперь в отставке ... на нового мантейнера.
Comment 34 ruslandh 2008-11-03 22:04:45 MSK
Короче провёл эксперимент на VrtualBox - поставил Desktop 4.0 релиз на второй диск (hdb) при живом первом, lilo прописал в mbr второго диска.

Потом первому диску сказал, что он sata, а второму, что он IDE slave

Всё загрузилось !

В lilo прописаны uuid, а не /dev/sda(/sdb)
Единственно boot=/dev/sdb

Но после загрузки fdisk -l выдаёт рабочий диск как /dev/sda (хотя он на слейв)

Поэтому bios=0x80 не нужно
Comment 35 ruslandh 2008-11-03 22:05:55 MSK
Ой Desktop 4.1 релизный - описка
Comment 36 Michael Shigorin 2008-11-04 13:12:16 MSK
(In reply to comment #34)
> Поэтому bios=0x80 не нужно
Эт ты не наступил на те грабли, когда нужно.
Comment 37 Vladislav Zavjalov 2008-11-05 12:42:32 MSK
Не понял, что и у кого не работает?

> В lilo прописаны uuid, а не /dev/sda(/sdb)
> Единственно boot=/dev/sdb

Это странно. Там сейчас должно писаться /dev/disk/by-id/... Какая версия alterator-lilo?

> Но после загрузки fdisk -l выдаёт рабочий диск как /dev/sda (хотя он на слейв)

Вроде бы, не удивительно. В новом ядре ide диски обзываются /dev/sd* и порядок их иногда довольно произвольный.

> Поэтому bios=0x80 не нужно

Так его и нет и он в новом lilo, вроде и не нужен...
Comment 38 ruslandh 2008-11-05 22:43:36 MSK
>Единственно boot=/dev/sdb

>Это странно. Там сейчас должно писаться /dev/disk/by-id/... Какая версия >alterator-lilo?
0.9-alt7.M41.8