Negyedik napom a Haiku-val: telepítési és bootolási problémák

Negyedik napom a Haiku-val: telepítési és bootolási problémák

TL;DR: Néhány napos kísérletezés után Haiku úgy döntöttem, hogy külön SSD-re telepítem. De nem volt ez olyan egyszerű.

Negyedik napom a Haiku-val: telepítési és bootolási problémák
Aktívan dolgozunk a Haiku betöltésének ellenőrzésén.

Három nappal ezelőtt tudomást szereztem a Haikuról, ami egy váratlanul jó operációs rendszer a PC-khez. A negyedik napnál tartunk, és szeretnék több "valódi munkát" végezni ezzel a rendszerrel, mivel az Anyboot formátumban kapott szakasz ehhez túl kicsi. Így kezembe veszem az új 120 GB-os SSD-t, és készülök a telepítő zökkenőmentes működésére... És itt egy nagy csalódás vár rám!

A telepítésre és a betöltésre általában kiemelt figyelmet és szeretetet fordítanak, mivel ezek az első és legfontosabb benyomások. Reméljük, hogy a "kezdő" tapasztalataim protokollja hasznos lesz a Haiku fejlesztőcsapatának a folyamatos erőfeszítéseikben, hogy létrehozzanak egy operációs rendszert, ami "egyszerűen működik". Minden hibát elvállalok!
Úgy vélem, különösen fontos a USB-ről való indítás, mivel nem minden felhasználó kész arra, hogy a fő SATA meghajtót (nem is beszélve az NVME-ről…) használja egy teljesen ismeretlen operációs rendszer kísérletezésére. Úgy tűnik, a USB-ről való indítás a legvalószínűbb forgatókönyv a legtöbb felhasználó számára, aki meg szeretné próbálni a Haikut valódi hardveren. A fejlesztőknek ezt komolyan figyelembe kell venniük.

Fejlesztői megjegyzés:

Csak most kezdtük el az EFI támogatását, gyorsan elkészítve egy béta verziót, amely EFI támogatással rendelkező gépeken indul. Az eddigi eredmények messze állnak a kívánt támogatási szinttől. Nem tudom, érdemes-e dokumentálni a jelenlegi munkát, vagy inkább arra kellene összpontosítanunk, hogy elérjük a megfelelő eredményeket, majd utána dokumentálni mindent.

Értelemszerűen hangzik, és van remény, hogy végül minden lényegesen jobb lesz, mint most. Jelenleg csak azt tudom ellenőrizni, ami eddig készült. Kezdjünk is hozzá...

Az Anyboot kép túl kicsi

Bár az Anyboot kép meglepően könnyen írható egy normál USB flash meghajtóra, nincs elegendő hely a Haiku szakaszában további szoftver telepítéséhez.

Negyedik napom a Haiku-val: telepítési és bootolási problémák
Az Anyboot kép USB flash meghajtóra írása elvileg elég egyszerű, de végül nem marad hely a valódi munkához.

Gyors megoldás: növeljük meg a Haiku alapértelmezett szakaszának méretét.

Tehát a Haiku valódi használatához mégis telepíteni kell az Installer alkalmazáson keresztül.

Az Installer nem csinál mindent egy helyen.

Emlékszel a csodás Mac OS X telepítőre?

Negyedik napom a Haiku-val: telepítési és bootolási problémák
Mac OS X 10.2 telepítő.

Ő:

  • iniitalizálja a lemezeket (GPT, GUID partíciós táblát ír)
  • partíciókat hoz létre (EFI, fő) "józan ész" alapján (a lemez legjobb kihasználásához)
  • megjelöli a rendszerindító partíciót (bootable jelzést állít be rajta)
  • másolja a fájlokat.

Más szavakkal, "mindent" megcsinál, felesleges bonyodalmak nélkül a felhasználó számára.

Ezzel szemben ott van a Haiku telepítője, amely csak másolja a fájlokat, és a felhasználóra bízza a többit — túl bonyolult, nehezen átlátható, még tapasztalt felhasználónak is. Különösen, ha olyan rendszert kell létrehozni, amely BIOS és EFI rendszerekkel is bootol.

Mit tegyek?

Pontosan nem tudom, de mindenesetre arra gondolok:

  1. Nyisd meg a DriveSetup-ot.
  2. Válaszd ki a telepítési eszközt.
  3. Lemez->Inicializálás->GUID partíciós térkép…->Tovább->Változtatások mentése->OK.
  4. Jobb kattintás egy üres helyre az eszközön, ahová az operációs rendszert telepíted.
  5. Létrehozás…->Beírom: 256, mint méret->EFI rendszeradat (nem vagyok teljesen biztos benne)->Változtatások mentése.
  6. Jobb kattintás az "EFI rendszeradat"-ra az eszközön, ahová az operációs rendszert telepíted.
  7. Inicializálás->FAT32 fájlrendszer…->Tovább->Beírom a nevet: "EFI", FAT bitméret: 32->Formázás->Változtatások mentése.
  8. Megismétlem a jobb kattintást egy üres helyre a szükséges eszközön.
  9. Létrehozás…->Beírom a partíció nevét: Haiku, partíció típusa: Be fájlrendszer->Létrehozás->Változtatások mentése.
  10. Jobb kattintás az EFI-n->Csatlakozás.
  11. Elindítom a telepítőt->zavarban vagyok a technikai szakszóhasználattal->Tovább->A lemez: Haiku (megbizonyosodtam, hogy ez ugyanaz a partíció, amit korábban létrehoztam)->Telepítés.
  12. A fájlkezelőben bemásolom az EFI mappát az aktuális rendszerből az EFI partícióra (feltételezem, hogy ez szükséges az EFI indításhoz).
  13. [Megjegyzés a fordítótól: ezt a pontot eltüntettem a fordításból; röviden — a szerző nem teljesen tudta megvalósítani a hibrid rendszer létrehozását, ami bootolhat EFI és BIOS alatt is.]
  14. Kikapcsolom.
  15. Csatlakoztatom az újonnan létrehozott lemezt arra a portra, ahonnan a rendszer biztosan elindul [furcsa, hogy ezt nekem nem kellett megtennem. — fordító megjegyzése]
  16. Bekapcsolom.

Úgy tűnik, világosan látható: szükség van egy olyan eszközre, ami mindent egy gombnyomásra elvégez, időben (!) megerősítést adva arról, hogy az eszközt fel lehet törölni.

"Gyors" megoldás: készíts egy automatikus telepítőt, ami mindent elvégez.

Nos, még ha nem is "gyors", de tisztességes. Ezek az első benyomások az új rendszerrel kapcsolatban. Ha nem sikerül telepíteni (velem ez többször is megesett) — sokan egyszerűen csendben távoznak végleg.

Technikai magyarázat a DriveSetup-ról szerint PulkoMandy

A BootManager egy teljes értékű betöltő menüt ír, beleértve a lehetőséget, hogy több rendszert indítsunk el a lemezről. Ehhez mindössze körülbelül 2kB-ra van szüksége a lemez elején. Ez alkalmas a régi lemezpartíciós sémákhoz, de nem a GPT-hez, amely ugyanezeket a szektorokat használja a partíciós táblához. Másrészt a writembr egy erősen leegyszerűsített kódot ír a lemezre, amely egyszerűen megtalálja az aktív partíciót, és onnan folytatja a betöltést. Ennek a kódnak elegendő 400 első bájt a lemezen, így nem ütközik a GPT-vel. Korlátozott támogatással rendelkezik GPT-partíciós lemezekhez (de az egyszerű esetekben minden rendben lesz).

Gyors megoldás: hagyjuk, hogy a BootManager beállító GUI minden olyan dolgot telepítsen a lemezre, ami a writembr segítségével telepíthető, ha GPT-partíciót észlel. Nincs szükség 2kB-os kódot telepíteni GPT-lemezekre. Nincs szükség bootable jelzőt rakni az EFI partícióra, csak a Haiku partícióra.

Első kísérlet: kernel pánik

Hardver

  • Acer TravelMate B117 N16Q9 (EndlessOS-szal árusították)
  • lspci
  • lsusb
  • A meglévő rendszert egy 16GB-os Kingston DataTraveler 100 flash meghajtóról indították, amely egy Anyboot kép alapján készült Etcher segítségével Linuxon, és a USB2.0 portba lett dugva (mert nem indult USB3 portból).
  • Kingston A400 120GB SSD, csak gyárilag, CSAT USB3 ASMedia ASM2115 adapterbe csatlakoztatva, amely a USB3 portba van dugva a TravelMate B117-en.

Eredmények

Az Installer megkezdi a fájlok másolását, majd felmerül egy I/O hiba, amelyet kernel pánik követ.

Negyedik napom a Haiku-val: telepítési és bootolási problémák
kernel pánik

Második kísérlet: nem indítható lemez

Hardver

Minden mint az előző, de az SSD egy olyan adapterbe van dugva, amely USB2.0 Hub-ra csatlakozik, amely a USB3 portba van dugva a TravelMate-ben. Ellenőriztem egy Windows telepítő flash meghajtóval, hogy ez a gép elindul USB3-ból.

Eredmények

Nem indítható rendszer. A lemezpartíció látszólag kilőtt a BootManager miatt.

Negyedik napom a Haiku-val: telepítési és bootolási problémák
BootManager. "Write boot menu" mi, tönkreteszi a lemezpartíciót?!

Harmadik kísérlet: wow, ez elindul! De nem a USB3 porton ezen a gépen.

Hardver

Minden ugyanúgy, mint a második kísérletben, de ez alkalommal egyáltalán nem használom a BootManager-t.
A lemezpartíció BootManager indítása nélküli kinézete, ha Linuxból ellenőrizzük.

Negyedik napom a Haiku-val: telepítési és bootolási problémák
Az "efi" partíció FAT32 fájlrendszerrel bootable-ként van megjelölve BootManager indítása nélkül. El fog indulni nem-EFI gépen?

Eredmények

  • EFI mód, USB2 port: közvetlenül a Haiku-ra bootolás
  • EFI mód, USB2 hub, csatlakoztatva USB3 portra: "no boot path found, scan for all partitions..." üzenet, majd boot képernyő "Select boot volume (Current: haiku)". A "Continue booting" gomb szürke, nem nyomható. Ha a "Select Boot Volume" listából választunk -> Haiku (Current: Latest state)->Latest state ->Return to main menu->Continue booting — közvetlenül a Haiku-ra bootol. Érdekes, miért nem tud "egyszerűen bootolni", és miért kell ezzel a körítéssel játszani? Főleg, hogy a boot képernyőn egyértelműen automatikusan megtalálta a boot partíciót. Szoftverhiba?
  • EFI mód, USB3 port: közvetlenül a Haiku-ra bootol. Oh, mennyire örülök... Túl korai volt, mint kiderült. Kék képernyő jelenik meg, de nagyon sokáig nem történik semmi. Az egérmutató "ujj" a képernyő közepén áll, nem mozog. A sata-usb3 adapter villog. Kernel pánik lett a vége. Az Anyboot kép USB3 flash meghajtón még nem ismerte fel bootolhatóként a jelenlegi hardveren. Hát ez bug! igénylést.

Negyedik napom a Haiku-val: telepítési és bootolási problémák
Kernel pánik USB3 portról történő bootoláskor.

Ami meglepő — még mindig lehet parancsokat beírni, de angol billentyűzetet kell használnom. Tehát, csinálom ahogy tanácsolták:

Negyedik napom a Haiku-val: telepítési és bootolási problémák
kép aláírás: kimenet syslog | tail 15 — amíg a kernel pánikol

A parancs végrehajtása újraindítás, sajnos, nem működik.

Negyedik kísérlet: a második gép

Azonos (működő) lemezt másik gépre helyeztem, ahol különböző portokkal teszteltem a működést.

Hardver

Ugyanez, mint a harmadik kísérletnél, de az Acer Revo One RL 85-ön.

Eredmények

  • EFI mód, USB2 port: "no boot path found, scan for all partitions..." üzenet, majd boot képernyő "Select boot volume (Current: haiku)". A "Continue booting" gomb szürke, nem nyomható. Ha a "Select Boot Volume" listából választunk -> Haiku (Current: Latest state)->Latest state ->Return to main menu->Continue booting — közvetlenül a Haiku-ra bootol. A kikapcsolás megakad a "Shutting down..." üzenetnél.
  • EFI mód, USB2 hub csatlakoztatva USB3 portra: pontosítás szükséges
  • EFI mód, USB3 port: "no boot path found, scan for all partitions..." üzenet, majd boot képernyő "Select boot volume (Current: haiku)". A "Continue booting" gomb szürke, nem nyomható. Ha a "Select Boot Volume" listából választunk -> Haiku (Current: Latest state)->Latest state ->Return to main menu->Continue booting — közvetlenül a Haiku-ra bootol.
    Felhívom a figyelmet, hogy az első rendszertől eltérően normális bootolás van az asztalra kernel pánik nélkül. A kikapcsolás megakad a "Shutting down" üzenetnél.
  • EFI mód, SATA port: Indítás közvetlenül a Haiku-ba. A leállás a 'Shutting down...' üzenetnél megakad.
  • CSM BIOS mód, USB2 port: megerősítés szükséges
  • CSM BIOS mód, USB2 hub, USB3 portba csatlakoztatva: megerősítés szükséges
  • CSM BIOS mód, USB3 port: megerősítés szükséges
  • CSM BIOS mód, SATA port: Fekete képernyő 'Reboot and Select proper Boot Device or Insert Boot Media in selected device and press a key'. Ez CSM BIOS-ból jötte? [Igen, pontosan ugyanazt az üzenetet adja ki a rendszerem, ha nem találja a bootloader-t. — fordító megjegyzése]

Ötödik kísérlet: harmadik gép

Ezt a lemezt áthelyeztem a harmadik gépre, és különböző portokon ellenőriztem.

Hardver

Ugyanaz, mint a harmadik kísérletnél, de Dell Optiplex 780-on. Ha nem tévedek — ezen a gépen korai EFI van, ami nyilvánvalóan mindig CSM BIOS módban működik.

Eredmények

  • USB2 port: Haiku betöltése
  • USB3 port (PCIe kártyán keresztül, Renesas Technology Corp. uPD720202 USB 3.0 Host Controller): megerősítés szükséges
  • SATA port: megerősítés szükséges

Hatodik kísérlet, negyedik gép, MacBook Pro

Hardver

Ugyanaz, mint a harmadik kísérletnél, de MacBookPro 7.1-el

Eredmények

Negyedik napom a Haiku-val: telepítési és bootolási problémák
Hogyan látja a Mac a Haiku-val készült flash meghajtót.

  • CSM mód ('Windows'): fekete képernyő 'No bootable drive — insert boot disk and press any key'. Ez Apple CSM-ból jött?
  • UEFI mód ('EFI Boot'): megáll a boot eszköz kiválasztásának képernyőjén.

Hetedik kísérlet, Lenovo netbook 32 bites Atom processzorral

Hardver

  • Kingston DataTraveler 100 16GB-os flash meghajtó, amely Linux alatt készült az Etcher segítségével, 32 bites Anyboot képet használva innen.

  • Lenovo ideapad s10 netbook Atom processzorral, merevlemez nélkül.

  • A gép lspci kimenete, Linux alatt készült.

  • lsusb

    00:1d.7 USB vezérlő: Intel Corporation NM10/ICH7 Family USB2 EHCI Controller (rev 02) (prog-if 20 [EHCI])
    Alrendszer: Lenovo NM10/ICH7 Family USB2 EHCI Controller
    Vezérlés: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
    Státusz: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- SERR- <PERR- INTx-
    Késleltetés: 0
    Megszakítás: A pin A az IRQ 23-ra van irányítva
    0. régió: Memória f0844000 (32-bites, nem előtöltött) [méret=1K]
    Képességek: [50] Áramellátás kezelése 2-es verzió
        Zászlók: PMEClk- DSI- D1- D2- AuxCurrent=375mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
        Státusz: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
    Képességek: [58] Debug port: BAR=1 offset=00a0
    Kernel driver in use: ehci-pci

Eredmények

Töltés folyamatban, majd kernel panic, parancs syslog|tail 15 kiírja kDiskDeviceManager::InitialDeviceScan() failed: No such file or directory több ATA hiba után. Megjegyzés: próbáltam USB-ről bootolni, nem SATA-ról.

Negyedik napom a Haiku-val: telepítési és bootolási problémák
Kernel panic a Lenovo ideapad s10-en, amikor a flash meghajtóról próbáltam bootolni.

Viccből a lemezt a SATA portra dugtam, de lényeges különbséget nem vettem észre a flash meghajtóhoz képest. Bár különböző üzeneteket kaptam a parancs használatakor syslog|tail 15 (azt mondta, megtalálta /dev/disk/ata/0/master/1).

mr. waddlesplash kérte, hogy futtassam a parancsot `syslog | grep usb ezért a helyzetért, itt vannak az eredmények. Még mindig örülök, hogy hasonló parancsokat lehet futtatni a kernel pánik képernyőjén.

Negyedik napom a Haiku-val: telepítési és bootolási problémák
Negyedik napom a Haiku-val: telepítési és bootolási problémák

Mr. waddlesplash szerint ez az EHCI hiba ugyanaz, mint a ezen a pályázaton

Nyolcadik kísérlet: MSI netbook 32 bites Atom processzorral

Hardver

Mint mindig

  • Medion Akoya E1210 netbook (MSI Wind U100 márkázás alatt) telepített lemezzel (amit nem használok a Haikuhoz).
  • lspci ezen a gépen
  • lsusb ezen a gépen
    00:1d.7 USB vezérlő: Intel Corporation NM10/ICH7 Family USB2 EHCI Controller (rev 02) (prog-if 20 [EHCI])
    Alrendszer: Micro-Star International Co., Ltd. [MSI] NM10/ICH7 Family USB2 EHCI Controller
    Irányítás: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
    Állapot: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- SERR- <PERR- INTx-
    Késleltetés: 0
    Megszakítás: A pin A IRQ 23-ra irányítva
    0. régió: Memória a dff40400-n (32 bites, nem előkészíthető) [méret=1K]
    Képességek: [50] Teljesítménykezelés 2. verzió
        Jelzések: PMEClk- DSI- D1- D2- AuxCurrent=375mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
        Állapot: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
    Képességek: [58] Hibakereső port: BAR=1 eltolás=00a0
    Kernel drivert használ: ehci-pci

Eredmények

Betöltődik a Haiku Installer. A TouchPad működik! (például, görgetés). A videokártya így ismerhető fel: Intel GMA (i945GME).

Kilencedik kísérlet: flash meghajtó 32 bites képpel a MacBook Pro-n

Hardver

  • Mint korábban.
  • MacBook 7.1

Eredmények

Fekete képernyő "No bootable drive — insert boot disk and press any key" felirattal.

Megjegyzés: Apple billentyűzet

Bármely billentyűzet bal alsó sarkában az alsó sorban a következő gombok találhatók:
nem-Apple: Ctrl-Fn-Windows-Alt-Spacebar
Apple: Fn-Ctrl-(Option vagy Alt)-Command-Spacebar

Jó lenne, ha minden billentyűzet Haikuban egyformán viselkedne, hogy egységesen lehessen használni őket, függetlenül attól, hogy mi van rájuk írva.
Az Apple billentyűzeten az Alt gomb nem közvetlenül balra van a szóköztől (helyette a Command gomb található ott).
Ilyen esetben felfedezném, hogy a Haiku automatikusan a Command gombot használja Alt helyett. Így, amikor Apple billentyűzetet használok, úgy érzem, hogy a billentyűzet nem Apple.
Nyilvánvalóan különböző beállítási lehetőségek léteznek, de jó lenne az automatikus felismerés és beállítás, végül is ez USB.

Megjegyzés: writembr helyreállításhoz?

Hallottam, hogy a parancs segítségével writembr a rendszert (EFI működéssel) BIOS-ból indíthatóvá lehet tenni.

/> 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

Jól néz ki, de a rendszer indítása továbbra sem lehetséges, mint korábban. Talán azért, mert a BIOS-on keresztüli indítás csak megfelelő partícióval működik, nem GPT-vel? [próbálni kellene a protective MBR-t... — fordító megjegyzése]

Zárás

A Haiku lenyűgöző, de a telepítési tapasztalat megszerzéséhez komoly megközelítés szükséges. Ezen kívül a betöltési folyamat egy lottó, körülbelül 1/3-es eséllyel a sikerre, és mindegy, hogy USB2 (Atomra épült netbook) vagy USB3 (Acer TravelMate) van a birtokodban. De legalább az egyik fejlesztőnek hasonló hardverrel rendelkezik. Remélem, hogy a "buta" tapasztalatom segíteni fog a fejlesztőknek megérteni, mire van szükségük a "mindennapi halandóknak", és egyúttal elérni, hogy az eredmény olyan elegáns legyen, mint a Mac OS X telepítője. Ne feledd, hogy ez még nem is 1.0-ás verzió, így minden nagyon is jól alakul!

Próbáld ki te is! A Haiku projekt DVD- vagy USB-ről letölthető képeket biztosít, amelyek napi rendszerességgel. A telepítéshez elegendő letölteni a képet és felírni egy pendrive-ra a Etcher

Kérdéseid vannak? Meghívunk a magyar nyelvű telegram csatornánkra.

Hibák áttekintése: Hogyan lőjön lábon magának C és C++ használatával. A Haiku OS receptgyűjteménye

Től szerző fordítás: ez a negyedik cikk a Haiku-val foglalkozó ciklusból.

Cikkek listája: Első Második Harmadik

Forrás: habr.com

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster