
TL;DR: след няколко дни експериментиране с реших да я инсталирам на отделен SSD. Но всичко се оказа не толкова просто.

Тече интензивна работа по проверка на зареждането на Haiku.
разбрах за Haiku, изненадващо добра операционна система за ПК. Днес е четвъртият ден и искам да направя повече „реална работа“ с тази система, а раздела, идващ в образа Anyboot, е твърде малък за това. Тогава взимам новия SSD с обем 120Гб, подготвям се за гладка работа на инсталатора… И ме чака разочарование!
На инсталацията и зареждането обикновено се отделя специално внимание и грижа, тъй като те са първите и най-важни впечатления. Има надежда, че протоколът на моето „начинаещо“ преживяване ще бъде полезен за екипа на разработчиците на Haiku в техните постоянни усилия за отстраняване на грешки в операционната система, която „просто работи“. Поемам всички грешки!
Както ми се струва, особено важна ще бъде ситуацията с зареждането от USB, тъй като не всеки потребител е готов да използва основния SATA диск (за NVME дори не споменавам…) за експерименти с напълно непозната операционна система. Смятам, че зареждането от USB е най-вероятният сценарий за повечето потребители, които решат да опитат Haiku на реално оборудване. Разработчиците трябва сериозно да се замислят върху това.
Коментар на разработчика:
Ние тъкмо започваме поддръжката на EFI, бързо написахме бета версия, която зарежда на машини с поддръжка на EFI. Получените резултати все още не са на желаното ниво на поддръжка. Не знам дали да документираме текущата работа, или просто да се фокусираме върху постигането на задоволителен резултат, след което вече да документираме всичко.
Звучи смислено и има надежда, че в крайна сметка всичко ще бъде много по-добре, отколкото е сега. Засега мога само да проверя какво е направено до днес. Да започнем…
Образът Anyboot е твърде малък
Въпреки че образът Anyboot удивително лесно се записва на обикновен флаш-диск, в него няма достатъчно място в раздела с Haiku за инсталиране на допълнителен софтуер.

Записването на образа Anyboot на флаш-диск в принципе е достатъчно просто, но в резултат на това не остава място за реална работа.
Бързо решение: увеличете размера на раздела Haiku по подразбиране.
За да работите с Haiku, трябва да го инсталирате с помощта на приложението Installer.
Installer не извършва всичко необходимо на едно място.
Спомняте ли си страхотния инсталатор на Mac OS X?

Инсталатор на Mac OS X 10.2.
Той:
- инициализира дисковете (записва GPT, таблица с дялове GUID)
- създава дялове (EFI, основен) използвайки "здрав разум" (за оптимално използване на диска)
- означава стартиращия дял (поставя bootable флага на него)
- копира файловете.
С други думи, той прави "всичко" без да се налага на потребителя да се затруднява.
От друга страна, има Installer за Haiku, който просто копира файловете и оставя всичко останало в ръцете на потребителя, твърде сложно е, дори за опитни потребители. Особено ако е необходимо система, която да стартира както на BIOS, така и на EFI.
Какво да правя?
Не мога да кажа със сигурност, но все пак предполагам следното:
- Отворете DriveSetup.
- Изберете устройството за инсталиране.
- Диск->Инициализиране->GUID Partition Map…->Продължи->Записване на промените->OK.
- Десен клик по празното пространство на устройството, където ще бъде инсталирана системата.
- Създайте…->Въвеждам 256 като размер->EFI system data (не съм напълно уверен)->Записване на промените.
- Десен клик по "EFI system data" на устройството, където ще бъде инсталирана системата.
- Инициализиране->FAT32 File System…->Продължи->Въвеждам име: "EFI", разрядност FAT: 32->Форматиране->Записване на промените.
- Повтарям десен клик по празното пространство на нужното устройство.
- Създайте…->Въвеждам име на дяла: Haiku, тип на дяла: Be File System->Създайте->Записване на промените.
- Десен клик по EFI->Прикрепете.
- Стартирам Installer->объркан от техническия сленг->Продължи->На диск: Haiku (убеждавам се, че това е същият дял, който създадох преди това)->Инсталирай.
- В файловия мениджър копирам каталога EFI от текущата система на EFI дяла (предполагам, че е необходимо за стартиране от EFI).
- [прим. преводача: премахнах този пункт от превода; накратко — авторът не е успял да създаде хибридна система за стартиране както на EFI, така и на BIOS.]
- изключвам.
- включвам новосъздадения диск в порта, от който системата със сигурност ще стартира [странно, не ми се наложи да правя това. — прим. преводача]
- включвам.
Ясно е, че е необходим инструмент, който да направи всичко с натискането на един бутон, с навременно (!) потвърждение, че устройството може да бъде изтрито.
„Бързо“ решение: направете автомагически Installer, който да направи всичко.
Дори и да не е "бързо", то е достойно. В края на краищата, това са първите впечатления от новата система. Ако не успеете да инсталирате (а при мен е било така няколко пъти) — много просто ще си тръгнат завинаги.
Техническо пояснение относно DriveSetup съгласно
BootManager записва пълноценно зареждащо меню, включително възможността за зареждане на няколко системи от диска, за това му трябват само около 2кб в началото на диска. Това е подходящо за стари схеми на форматиране на диска, но не и за GPT, който използва същите сектори за таблицата с дялове. От друга страна writembr записва много опростен код на диска, който просто ще намери активния дял и ще продължи зареждането от него. На този код му трябват само 400 байта от началото на диска, така че той не се пресича с GPT. Подкрепата за дискове с GPT е ограничена (но за опростени случаи всичко ще бъде както трябва).
Бързо решение: нека GUI за конфигуриране на BootManager записва всичко, което се инсталира с writembr на диска, ако се открие GPT. Не е нужно да се поставя код с размер 2кб на дискове GPT. Не е нужно да се поставя bootable флаг на EFI дяла, само на дяла Haiku.
Първа опит: kernel panic
Оборудване
- Acer TravelMate B117 N16Q9 (продаван с EndlessOS)
- Съществуващата система беше стартирана от флашка Kingston DataTraveler 100 с размер 16гб, направена от Anyboot образ с помощта на Etcher на Linux, поставена в USB2.0 порт (защото не се стартираше от USB3 порт)
- SSD Kingston A400 с размер 120гб, само от завода, свързан с адаптер sata-usb3 ASMedia ASM2115, който е свързан в USB3 порт на TravelMate B117.
Резултати
Installer стартира копирането на файлове, след което излиза грешка при вход/изход, съпроводена от kernel panic

kernel panic
Втора опит: незареждан диск
Оборудване
Всичко както преди, но SSD е свързан с адаптер, свързан в USB2.0 Hub, вмъкнат в USB3 порт на TravelMate. Проверих с инсталационна флашка с Windows, че тази машина се зарежда от USB3.
Резултати
Незареждаема система. Изглежда, че форматирането на диска е повредено от BootManager.

BootManager. "Write boot menu" какво, разрушава ли форматирането на диска?!
Трети опит: ох, зарежда се! Но не през USB3 порта на тази машина
Оборудване
Все така, как и при втория опит, но този път не използвам BootManager изобщо.
Разметката без стартиране на BootManager изглежда така, ако се проверява от Linux.

Секцията «efi» с файловата система FAT32 е маркирана като загрузочна без стартиране на BootManager. Ще се стартира ли на не-EFI машина?
Резултати
- Режим EFI, USB2 порт: зареждане директно в Haiku
- Режим EFI, USB2 хъб, свързан в USB3 порт: Съобщение «no boot path found, scan for all partitions…», след което екран за зареждане с «Select boot volume (Current: haiku)». Кнопката «Continue booting» е сива, не може да се натиска. Ако изберете от списъка «Select Boot Volume» -> Haiku (Current: Latest state) -> Latest state -> Return to main menu -> Continue booting — зарежда се директно в Haiku. Интересно е защо не може «просто да се зареди», а изисква еднообразни действия? Особено, тъй като на екрана за зареждане ясно е автоматично намерен загрузочният дял. Програмна грешка?
- Режим EFI, USB3 порт: зарежда се директно в Haiku. О, колко се радвам… Преждевременно, както се оказа. Показва се син екран, но много дълго време нищо не се случва. Курсорът-«палец» замръзва в средата на екрана и не се движи. Преходникът SATA-USB3 мига. Работата завърши с kernel panic. Образът Anyboot на USB3 не беше разпознат за загрузочен на текущото оборудване. Е, това е bug! По този въпрос заведох .

Kernel panic при зареждане от USB3 порт.
Също така е учудващо — все още мога да въвеждам команди, но ще трябва да използвам английска подредба. Така че, правя :

описание на картинката: изход syslog | tail 15 — докато ядрото паничеси
Повикване на командата reboot, за съжаление, не работи.
Четвърти опит: втората машина
Преместих такъв същия (точно работещ) диск на друга машина, където проверих работата с различни портове.
Оборудване
Всичко същото като при третия опит, но на Acer Revo One RL 85.
Резултати
- Режим EFI, USB2 порт: Съобщение «no boot path found, scan for all partitions…», след което екран за зареждане с «Select boot volume (Current: haiku)». Кнопката «Continue booting» е сива, не може да се натиска. Ако изберете от списъка «Select Boot Volume» -> Haiku (Current: Latest state) -> Latest state -> Return to main menu -> Continue booting — зарежда се директно в Haiku. Изключването се забавя на съобщението «Shutting down…».
- Режим EFI, USB2 хъб, свързан в USB3 порт: нужда от уточнение
- EFI режим, USB3 порт: Появляется сообщение «не найден путь загрузки, сканирование всех разделов...», после чего загрузочный экран с «Выберите загрузочный том (Текущий: haiku)». Кнопка «Продолжить загрузку» серая, не нажимается. Если выбрать в списке «Выбрать загрузочный том» -> Haiku (Текущий: Последнее состояние) -> Последнее состояние -> Вернуться в главное меню -> Продолжить загрузку — загружается напрямую в Haiku.
Обращаю внимание, что, в отличие от первой системы, есть нормальная загрузка до рабочего стола без kernel panic. Выключение зависает на сообщении «Выключение...». - EFI режим, sata порт: Загружается напрямую в Haiku. Выключение зависает на сообщении «Выключение...».
- CSM BIOS режим, USB2 порт: требуется уточнение
- CSM BIOS режим, USB2 хаб, подключенный к USB3 порту: требуется уточнение
- CSM BIOS режим, USB3 порт: требуется уточнение
- CSM BIOS режим, sata порт: Черный экран с надписью «Перезагрузите и выберите правильное загрузочное устройство или вставьте загрузочный носитель в выбранное устройство и нажмите клавишу». Появилось от CSM BIOS? [Да, точно такое же сообщение выдает моя система, если не находит загрузчик. — прим. переводчика]
Пятая попытка: третья машина
Перенес этот же диск на третью машину, проверил на разных портах.
Оборудване
То же, что и в третьей попытке, но на Dell Optiplex 780. Если я не ошибаюсь — на этой машине ранний EFI, который, видимо, всегда работает в режиме CSM BIOS.
Резултати
- Порт USB2: загрузка Haiku
- Порт USB3 (через карточку PCIe, контроллер USB 3.0 от Renesas Technology Corp. uPD720202): требуется уточнение
- Порт sata: требуется уточнение
Шестая попытка, четвертая машина, MacBook Pro
Оборудване
Все то же, как и в третьей попытке, но с MacBookPro 7.1
Резултати

Как Mac видит флешку с Haiku.
- CSM режим («Windows»): черный экран с надписью «Нет загрузочного устройства — вставьте загрузочный диск и нажмите любую клавишу». Она пришла от Apple CSM?
- UEFI режим («EFI Boot»): останавливается на экране выбора загрузочного устройства.
Седьмая попытка, нетбук Lenovo с 32-битным процессором Atom
Оборудване
Флешка Kingston DataTraveler 100 емкостью 16 ГБ, сделанная на Linux с помощью Etcher, используя 32-битный образ Anyboot .
Нетбук Lenovo ideapad s10 на основе процессора Atom без жесткого диска.
, снят на linux.
lsusb
00:1d.7 USB контроллер: Intel Corporation NM10/ICH7 Family USB2 EHCI Controller (rev 02) (prog-if 20 [EHCI]) Subsystem: Lenovo NM10/ICH7 Family USB2 EHCI Controller Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- SERR- <PERR- INTx- Latency: 0 Interrupt: pin A routed to IRQ 23 Region 0: Memory at f0844000 (32-bit, non-prefetchable) [size=1K] Capabilities: [50] Управление питанием версия 2 Флаги: PMEClk- DSI- D1- D2- AuxCurrent=375mA PME(D0+,D1-,D2-,D3hot+,D3cold+) Статус: D0 NoSoftRst- PME-Включено- DSel=0 DScale=0 PME- Capabilities: [58] Порт отладки: BAR=1 смещение=00a0 Драйвер ядра в использовании: ehci-pci
Резултати
Зарежда се, след това става kernel panic, команда syslog|tail 15 показва kDiskDeviceManager::InitialDeviceScan() неуспешно: Няма такъв файл или директория след няколко ATA грешки. Забележка: опитах се да заредя от USB, а не от SATA.

Kernel panic на нетбук Lenovo ideapad s10 при зареждане от флашка.
Заради шегата включих диска в SATA порта, но не забелязах особена разлика с флашката. Въпреки това получих различни съобщения, когато използвах командата syslog|tail 15 (каза, че е намерило /dev/disk/ata/0/master/1).
ме помоли да изпълня командата `syslog | grep usb за този случай, ето резултатите. Все още съм радостен, че мога да изпълнявам подобни команди на екрана с kernel panic.


Според mr. waddlesplash, тази грешка EHCI е същата като в
Осма опит: нетбук MSI с 32-битов Atom процесор
Оборудване
Както преди
- Нетбук Medion Akoya E1210 (под марката MSI Wind U100) с инсталиран диск (който не използвам за Haiku).
- този компютър
- lsusb на този компютър
00:1d.7 USB контролер: Intel Corporation NM10/ICH7 Family USB2 EHCI Controller (rev 02) (prog-if 20 [EHCI]) Subsystem: Micro-Star International Co., Ltd. [MSI] NM10/ICH7 Family USB2 EHCI Controller Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- SERR- <PERR- INTx- Latency: 0 Interrupt: pin A routed to IRQ 23 Region 0: Memory at dff40400 (32-bit, non-prefetchable) [size=1K] Capabilities: [50] Power Management version 2 Flags: PMEClk- DSI- D1- D2- AuxCurrent=375mA PME(D0+,D1-,D2-,D3hot+,D3cold+) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Capabilities: [58] Debug port: BAR=1 offset=00a0 Kernel driver in use: ehci-pci
Резултати
Зарежда се в Installer Haiku. Работи TouchPad! (например, скролиране). Видеокартата беше разпозната като Intel GMA (i945GME).
Девети опит: флашка с 32-битов образ на MacBook Pro
Оборудване
- Както преди.
- MacBook 7.1
Резултати
Черни екран с надпис „No bootable drive — insert boot disk and press any key“.
Забележка: клавиатурата Apple
В левия долен ъгъл на всяка клавиатура на долния ред има следните бутони:
не-Apple: Ctrl-Fn-Windows-Alt-Spacebar
Apple: Fn-Ctrl-(Option или Alt)-Command-Spacebar
Би било чудесно, ако всички клавиатури в Haiku се държаха по един и същи начин, за да бъдат използвани по един и същи начин, независимо от това какво всъщност е изписано на тях.
На Apple клавиатура бутона Alt не е веднага вляво от пробела (вместо него там е бутона Command).
В този случай бих открил, че в Haiku автоматично ще се използва бутона Command вместо бутона Alt. Така че, работейки на Apple клавиатура, бих имал чувството, че клавиатурата е не-Apple.
Очевидно, в настройките има различни опции, но бих искал автоматично разпознаване и приспособяване, тъй като това е USB, накрая.
Забележка: writembr за възстановяване?
Чух, че с помощта на командата writembr може да се направи системата (работеща с EFI) да се зарежда от BIOS.
/> writembr /dev/disk/.../.../.../.../raw
About to overwrite the MBR boot code on /dev/disk/scsi/0/2/0/raw
This may disable any partition managers you have installed.
Are you sure you want to continue?
yes/[no]: yes
Rewriting MBR for /dev/disk/.../.../.../.../raw
MBR was written OKИзглежда добре, но в резултат системата все още не може да се зареди, както преди. Може би, защото зареждането през BIOS работи само с подходяща структура, а не GPT? [трябва да опитам protective MBR… — прим. переводчика]
Заключение
Haiku е впечатляваща, но за да се получи опит с инсталацията, е необходим сериозен подход. Освен това процесът на зареждане е лотария, с шансове за успех около 1/3, независимо дали имате USB2 (нетбук на Atom) или USB3 (Acer TravelMate). Но поне един разработчик има същото оборудване. Надявам се, моят 'нубски' опит да помогне на разработчиците да разберат какво трябва на 'обикновените смъртни', както и да направят резултата такъв, какъвто е елегантен, като инсталатора на Mac OS X. Не трябва да забравяме, че това дори не е версия 1.0, така че всичко е много добре!
Опитайте сами! В края на краищата проектът Haiku предлага образи за зареждане от DVD или USB, генерирани . За инсталацията е достатъчно да изтеглите образа и да го запишете на флашка с помощта на
Имате въпроси? Каним ви в рускоезичния .
Преглед на грешките:
От превода: това е четвъртата статия от цикъла за Haiku.
Списък на статиите:
Източник: habr.com
