Mijn vierde dag met Haiku: problemen met installeren en downloaden

Mijn vierde dag met Haiku: problemen met installeren en downloaden

TL; DR: na een paar dagen experimenteren met Haiku Ik heb besloten om hem op een aparte SSD te zetten. Maar alles bleek niet zo eenvoudig te zijn.

Mijn vierde dag met Haiku: problemen met installeren en downloaden
We werken er hard aan om de download van Haiku te controleren.

Drie dagen geleden Ik leerde over Haiku, een verrassend goed besturingssysteem voor pc's. Het is dag vier en ik wilde meer "echt werk" doen met dit systeem, en de partitie die bij de Anyboot-image wordt geleverd, is daarvoor te klein. Dan pak ik een gloednieuwe SSD van 120 GB, bereid me voor op het vlotte werk van het installatieprogramma... En er wacht mij een tegenvaller!

Installatie en downloaden krijgen meestal veel aandacht en liefde, omdat het de eerste en belangrijkste indrukken zijn. Ik hoop dat het logboek van mijn "newbie"-ervaring nuttig zal zijn voor het Haiku-ontwikkelingsteam bij hun voortdurende inspanningen om fouten te maken in een besturingssysteem dat "gewoon werkt". Ik neem alle fouten op mij!
Het lijkt mij dat de situatie met opstarten via USB vooral belangrijk zal zijn, omdat niet elke gebruiker klaar is om de hoofd-SATA-schijf te gebruiken (ik heb het niet over NVME...) om te experimenteren met een volkomen onbekend besturingssysteem. Ik denk dat USB-opstarten het meest waarschijnlijke scenario is voor de meeste gebruikers die besluiten Haiku op echte hardware te proberen. Ontwikkelaars moeten hier serieus naar kijken.

Commentaar van de ontwikkelaar:

We zijn zojuist begonnen met EFI-ondersteuning door snel een bètaversie te schrijven die opstart op EFI-compatibele machines. De behaalde resultaten zijn nog steeds verre van het gewenste draagvlak. Ik weet niet of we het lopende werk moeten documenteren, of ons alleen maar moeten concentreren op het bereiken van het gewenste resultaat, en dan alles moeten documenteren.

Het klinkt betekenisvol, en er is hoop dat alles uiteindelijk veel beter zal zijn dan het nu is. Voorlopig kan ik alleen maar controleren wat er voor vandaag is gedaan. Laten we beginnen...

Anyboot-image is te klein

Ondanks het feit dat de Anyboot-image verrassend eenvoudig naar een gewone flashdrive kan worden geschreven, heeft deze niet genoeg ruimte op de Haiku-partitie om extra software te installeren.

Mijn vierde dag met Haiku: problemen met installeren en downloaden
Het schrijven van een Anyboot-image naar een flashdrive is in principe vrij eenvoudig, maar daardoor is er niet genoeg ruimte voor echt werk.

Snelle oplossing: vergroot de standaard Haiku-partitiegrootte.

Dus om Haiku daadwerkelijk te gebruiken, moet je het nog steeds installeren met behulp van de Installer-app.

Installer doet niet alles wat u nodig heeft op één plek

Ken je het geweldige Mac OS X-installatieprogramma nog?

Mijn vierde dag met Haiku: problemen met installeren en downloaden
Mac OS X 10.2-installatieprogramma

hij:

  • initialiseert schijven (schrijft GPT, GUID-partitietabel)
  • maakt partities aan (EFI, primair) met behulp van "gezond verstand" (voor het beste gebruik van de schijf)
  • markeert de opstartpartitie (zet de opstartbare vlag erop)
  • kopieert bestanden

Met andere woorden, het doet “alles” zonder enige rompslomp voor de gebruiker.

Aan de andere kant is er Installer voor Haiku, die eenvoudigweg bestanden kopieert en al het andere aan de gebruiker overlaat, wat te omslachtig is, wat je zelfs met ervaring niet meteen zult begrijpen. Vooral als je een systeem nodig hebt dat opstart op zowel BIOS- als EFI-systemen.

Wat moet ik doen?

Ik kan het niet met zekerheid zeggen, maar ik vermoed in ieder geval dit:

  1. Open DriveSetup
  2. Selecteer apparaat om te installeren
  3. Schijf->Initialiseren->GUID-partitietoewijzing...->Doorgaan->Wijzigingen opslaan->OK
  4. Klik met de rechtermuisknop op een lege ruimte op het apparaat waarop het systeem wordt geïnstalleerd
  5. Maken...->Ik voer 256 in als grootte->EFI-systeemgegevens (niet helemaal zeker)->Wijzigingen opslaan
  6. Klik met de rechtermuisknop op “EFI-systeemgegevens” op het apparaat waarop het systeem zal worden geïnstalleerd
  7. Initialiseren->FAT32-bestandssysteem...->Doorgaan->Voer de naam in: "EFI", FAT-bitdiepte: 32->Formatteren->Wijzigingen opslaan
  8. Ik herhaal de rechtermuisknop op een lege ruimte op het gewenste apparaat
  9. Aanmaken...->Voer partitienaam in: Haiku, partitietype: Be File System->Aanmaken->Wijzigingen opslaan
  10. Klik met de rechtermuisknop op EFI->Verbinden
  11. Ik start Installer -> verward door de technoslang -> Doorgaan -> Naar schijf: Haiku (zorg ervoor dat het dezelfde partitie was die ik eerder had gemaakt) -> Installeren
  12. In Bestandsbeheer kopieer ik de EFI-map van het huidige systeem naar de EFI-partitie (ik denk dat dit nodig is om vanaf EFI op te starten)
  13. [ong. vertaler: deze paragraaf uit de vertaling verwijderd; kortom, de auteur heeft de creatie van een hybride systeem om zowel EFI als BIOS op te starten niet helemaal onder de knie]
  14. Ik zet het uit
  15. Ik sluit de nieuw gemaakte schijf aan op de poort waarvandaan het systeem zeker zal opstarten [vreemd, ik hoefde dit niet te doen. — ca. vertaler]
  16. zet het aan

Het lijkt mij duidelijk zichtbaar: we hebben een tool nodig die alles met één druk op de knop doet, met tijdige (!) bevestiging dat het apparaat kan worden gewist.

“Snelle” oplossing: maak een automatisch installatieprogramma dat alles doet.

Nou, zelfs als het niet “snel” is, is het fatsoenlijk. Dit zijn de eerste indrukken van het nieuwe systeem. Als je het niet kunt installeren (en dit is mij meerdere keren overkomen), zullen velen gewoon stilletjes voor altijd vertrekken.

Technische uitleg over DriveSetup volgens PulkoMandy

BootManager schrijft een volledig opstartmenu, inclusief de mogelijkheid om meerdere systemen vanaf schijf op te starten, hiervoor heeft het slechts ongeveer 2 kb nodig aan het begin van de schijf. Dit werkt voor oudere schijfpartitioneringsschema's, maar niet voor GPT, dat dezelfde sectoren gebruikt voor de partitietabel. Aan de andere kant schrijft writembr sterk vereenvoudigde code naar schijf, die eenvoudigweg de actieve partitie zal vinden en ervan zal blijven opstarten. Deze code heeft alleen de eerste 400 bytes op de schijf nodig en interfereert dus niet met GPT. Het heeft beperkte ondersteuning voor GPT-schijven (maar voor eenvoudige gevallen komt alles goed).

Snelle oplossing: laat de BootManager-installatie-GUI alles wat geïnstalleerd is met behulp van writembr op schijf zetten als GPT-partitionering wordt gedetecteerd. Het is niet nodig om 2 kb code op GPT-schijven te plaatsen. Het is niet nodig om de opstartvlag op de EFI-partitie in te stellen, alleen op de Haiku-partitie.

Eerste poging: kernelpaniek

Uitrusting

  • Acer TravelMate B117 N16Q9 (verkocht met EndlessOS)
  • lspci
  • lsusb
  • het bestaande systeem werd gelanceerd vanaf een Kingston DataTraveler 100-flashdrive van 16 GB, gemaakt van een Anyboot-image met Etcher op Linux, geplaatst in de USB2.0-poort (omdat het niet opstartte vanaf de USB3-poort)
  • SSD Kingston A400 maat 120GB, alleen af ​​fabriek, aangesloten op een sata-usb3 adapter ASMedia ASM2115, die wordt aangesloten op de USB3 poort in de TravelMate B117.

Bevindingen

Het installatieprogramma begint met het kopiëren van bestanden, waarna er een I/O-fout verschijnt, vergezeld van kernelpaniek

Mijn vierde dag met Haiku: problemen met installeren en downloaden
kernel paniek

Tweede poging: schijf start niet op

Uitrusting

Alles is hetzelfde als voorheen, maar de SSD is aangesloten op een adapter, die is aangesloten op de USB2.0 Hub, aangesloten op de USB3-poort in de TravelMate. Ik heb met behulp van een Windows-installatie-flashstation geverifieerd dat deze machine opstart vanaf USB3.

Bevindingen

Niet-opstartbaar systeem. De schijfindeling leek te zijn verdwenen vanwege BootManager.

Mijn vierde dag met Haiku: problemen met installeren en downloaden
BootManager. Vernietigt “Write boot menu” de schijfindeling?!

Derde poging: wauw, het wordt geladen! Maar niet via de USB3-poort op deze machine

Uitrusting

Alles is hetzelfde als bij de tweede poging, maar deze keer gebruik ik BootManager helemaal niet.
De opmaak zonder BootManager uit te voeren ziet er als volgt uit wanneer gecontroleerd vanuit Linux.

Mijn vierde dag met Haiku: problemen met installeren en downloaden
Een "efi"-partitie met een FAT32-bestandssysteem wordt gemarkeerd als opstartbaar zonder BootManager uit te voeren. Werkt het op een niet-EFI-machine?

Bevindingen

  • EFI-modus, USB2-poort: rechtstreeks downloaden naar Haiku
  • EFI-modus, USB2-hub, aangesloten op USB3-poort: bericht "geen opstartpad gevonden, scan naar alle partities...", gevolgd door een opstartscherm met "Selecteer opstartvolume (huidig: haiku)". De knop “Doorgaan met opstarten” is grijs en kan niet worden ingedrukt. Als u “Select Boot Volume” selecteert in de lijst -> Haiku (huidig: Nieuwste staat) -> Nieuwste staat -> Terug naar hoofdmenu -> Doorgaan met opstarten - het wordt rechtstreeks in Haiku geladen. Ik vraag me af waarom het niet “gewoon kan opstarten”, maar dansen met een tamboerijn vereist? Bovendien wordt de opstartpartitie duidelijk automatisch gevonden op het laadscherm. Softwarefout?
  • EFI-modus, USB3-poort: start rechtstreeks op in Haiku. Wauw, wat ben ik blij... Voorbarig, zo bleek. Er verschijnt een blauw scherm, maar er gebeurt een hele tijd niets. De vingercursor hangt in het midden van het scherm en beweegt niet. De sata-usb3-adapter knippert. De zaak eindigde met kernelpaniek. De Anyboot-image op een USB3-flashdrive werd niet eens herkend als opstartbaar op de huidige hardware. Bah, het is een bug! Wat dit betreft ben ik begonnen verzoek.

Mijn vierde dag met Haiku: problemen met installeren en downloaden
Kernelpaniek bij opstarten vanaf USB3-poort.

Het verbazingwekkende is dat je nog steeds opdrachten kunt typen, maar dat je de Engelse lay-out moet gebruiken. Dus ik doe zoals geadviseerd:

Mijn vierde dag met Haiku: problemen met installeren en downloaden
onderschrift afbeelding: uitvoer syslog | tail 15 - terwijl de kernel in paniek raakt

Een commando oproepen reboot, werkt helaas niet.

Vierde poging: tweede auto

Ik heb dezelfde (precies werkende) schijf overgebracht naar een andere machine, waar ik controleerde of deze met verschillende poorten werkte.

Uitrusting

Alles is hetzelfde als bij de derde poging, maar dan op Acer Revo One RL 85.

Bevindingen

  • EFI-modus, USB2-poort: bericht "geen opstartpad gevonden, scan naar alle partities...", gevolgd door een opstartscherm met "Selecteer opstartvolume (huidig: haiku)". De knop “Doorgaan met opstarten” is grijs en kan niet worden ingedrukt. Als u “Select Boot Volume” selecteert in de lijst -> Haiku (huidig: Nieuwste staat) -> Nieuwste staat -> Terug naar hoofdmenu -> Doorgaan met opstarten - het wordt rechtstreeks in Haiku geladen. Bij het afsluiten blijft de melding “Afsluiten...” hangen.
  • EFI-modus, USB2-hub, aangesloten op USB3-poort: verduidelijking vereist
  • EFI-modus, USB3-poort: bericht "geen opstartpad gevonden, scan naar alle partities...", gevolgd door een opstartscherm met "Selecteer opstartvolume (huidig: haiku)". De knop “Doorgaan met opstarten” is grijs en kan niet worden ingedrukt. Als u “Select Boot Volume” selecteert in de lijst -> Haiku (huidig: Nieuwste staat) -> Nieuwste staat -> Terug naar hoofdmenu -> Doorgaan met opstarten - het wordt rechtstreeks in Haiku geladen.
    Houd er rekening mee dat er, in tegenstelling tot het eerste systeem, een normale opstart naar de desktop plaatsvindt zonder kernelpaniek. Afsluiten blijft hangen bij het bericht 'Afsluiten wordt uitgevoerd'.
  • EFI-modus, sata-poort: start rechtstreeks op in Haiku. Bij het afsluiten blijft de melding “Afsluiten...” hangen.
  • CSM BIOS-modus, USB2-poort: verduidelijking nodig
  • CSM BIOS-modus, USB2-hub aangesloten op USB3-poort: verduidelijking nodig
  • CSM BIOS-modus, USB3-poort: verduidelijking nodig
  • CSM BIOS-modus, sata-poort: Zwart scherm met de woorden "Herstart en selecteer het juiste opstartapparaat of plaats opstartmedia in het geselecteerde apparaat en druk op een toets." Kwam het uit CSM BIOS? [Ja, mijn systeem geeft precies hetzelfde bericht als het de bootloader niet vindt. — ca. vertaler]

Vijfde poging: derde auto

Ik heb dezelfde schijf naar een derde machine overgebracht en op verschillende poorten gecontroleerd.

Uitrusting

Hetzelfde als bij de derde poging, maar dan op een Dell Optiplex 780. Als ik me niet vergis, heeft deze machine een vroege EFI, die blijkbaar altijd werkt in de CSM BIOS-modus.

Bevindingen

  • USB2-poort: Haiku-download
  • USB3-poort (via PCIe-kaart, Renesas Technology Corp. uPD720202 USB 3.0 Host Controller): verduidelijking nodig
  • sata-poort: verduidelijking vereist

Zesde poging, vierde machine, MacBook Pro

Uitrusting

Alles is hetzelfde als bij de derde poging, maar dan met MacBookPro 7.1

Bevindingen

Mijn vierde dag met Haiku: problemen met installeren en downloaden
Hoe Mac een flashdrive met Haiku ziet.

  • CSM-modus (Windows): zwart scherm met de woorden "Geen opstartbare schijf - plaats de opstartschijf en druk op een willekeurige toets." Kwam het van Apple CSM?
  • UEFI-modus (“EFI Boot”): stopt bij het selectiescherm voor het opstartapparaat.

Zevende poging, Lenovo netbook met 32-bit Atom-processor

Uitrusting

  • Kingston DataTraveler 100 16GB flashdrive gemaakt op Linux met Etcher met behulp van een 32-bit Anyboot-image vandaar.

  • Lenovo ideapad s10 netbook gebaseerd op Atom-processor zonder harde schijf.

  • lspci van deze auto, gefilmd op Linux.

  • lsusb

    00:1d.7 USB controller: 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- <MAbort- >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] 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

Bevindingen

Bezig met laden, dan treedt er kernelpaniek op, command syslog|tail 15 displays kDiskDeviceManager::InitialDeviceScan() failed: No such file or directory na verschillende ATA-fouten. Opmerking: ik heb geprobeerd op te starten vanaf USB, niet vanaf sata.

Mijn vierde dag met Haiku: problemen met installeren en downloaden
Kernelpaniek op een Lenovo ideapad s10-netbook bij het opstarten vanaf een flashstation.

Voor de lol heb ik de schijf in de sata-poort gestoken, maar ik merkte niet veel verschil met de flashdrive. Hoewel ik verschillende berichten ontving toen ik de opdracht gebruikte syslog|tail 15 (Er stond dat het gevonden was /dev/disk/ata/0/master/1).

Dhr. waggelplons vroeg mij om het commando uit te voeren `syslog | grep usb voor dit geval, dus hier zijn de resultaten. Ik ben nog steeds blij dat het mogelijk is om dit soort opdrachten op het scherm uit te voeren met kernelpanic.

Mijn vierde dag met Haiku: problemen met installeren en downloaden
Mijn vierde dag met Haiku: problemen met installeren en downloaden

Volgens dhr. waddlesplash deze EHCI-fout is hetzelfde als in deze applicatie

Achtste poging: MSI-netbook met 32-bit Atom-processor

Uitrusting

Zoals eerder

  • Medion Akoya E1210 netbook (gelabeld MSI Wind U100) met geïnstalleerde schijf (die ik niet gebruik voor Haiku).
  • lspci deze machine
  • lsusb van deze machine
    00:1d.7 USB controller: 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- <MAbort- >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

Bevindingen

Geüpload naar Installer Haiku. Touchpad werkt! (bijvoorbeeld scrollen). De videokaart werd herkend als Intel GMA (i945GME).

Negende poging: flashdrive met een 32-bits afbeelding op een MacBook Pro

Uitrusting

  • Zoals eerder.
  • MacBook 7.1

Bevindingen

Zwart scherm met de woorden "Geen opstartbare schijf - plaats de opstartschijf en druk op een willekeurige toets."

Opmerking: Apple-toetsenbord

In de linkerbenedenhoek van elk toetsenbord op de onderste rij bevinden zich de volgende knoppen:
niet-Apple: Ctrl-Fn-Windows-Alt-spatiebalk
Apple: Fn-Ctrl-(Option of Alt)-Command-spatiebalk

Het zou geweldig zijn als alle toetsenborden in Haiku zich op dezelfde manier zouden gedragen, zodat ze op dezelfde manier gebruikt zouden kunnen worden, ongeacht wat er feitelijk op stond.
Op een Apple-toetsenbord bevindt de Alt-knop zich niet direct links van de spatiebalk (in plaats daarvan bevindt zich de Command-toets).
In dit geval zou ik merken dat Haiku automatisch de Command-toets zou gebruiken in plaats van de Alt-toets. Dus als ik een Apple-toetsenbord gebruik, heb ik het gevoel dat het toetsenbord niet van Apple is.
Uiteraard zijn er verschillende mogelijkheden in de instellingen, maar ik zou graag automatische herkenning en aanpassing willen, want dit is tenslotte USB.

Opmerking: writembr voor herstel?

Ik hoorde dat via het commando writembr u kunt het systeem (met EFI) laten opstarten vanuit het 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

Het ziet er goed uit, maar het resultaat is dat het systeem nog steeds niet meer kan opstarten zoals voorheen. Misschien omdat opstarten via BIOS alleen werkt met geschikte partities en niet met GPT? [Ik zou beschermende MBR moeten proberen... — ca. vertaler]

Conclusie

Haiku is geweldig, maar de installatie-ervaring vereist een serieuze aanpak. Bovendien is het opstartproces een loterij, met een kans van slagen van ongeveer 1/3, en maakt het niet uit of je USB2 (netbook op Atom) of USB3 (Acer TravelMate) hebt. Maar minstens één ontwikkelaar heeft dezelfde hardware. Ik hoop dat mijn "noob"-ervaring ontwikkelaars zal helpen begrijpen wat "gewone stervelingen" nodig hebben, en dat het resultaat net zo elegant zal zijn als het installatieprogramma voor Mac OS X. Vergeet niet dat dit niet eens versie 1.0 is, dus alles is erg goed!

Probeer het zelf! Het Haiku-project levert immers gegenereerde afbeeldingen voor het opstarten vanaf dvd of USB dagelijks. Om te installeren hoeft u alleen maar de afbeelding te downloaden en deze naar een flashstation te schrijven met behulp van etser

Heb je nog vragen? Wij nodigen u uit voor de Russischtalige telegramkanaal.

Foutoverzicht: Hoe je jezelf in de voet schiet in C en C++. Haiku OS-receptenverzameling

Van auteur vertaling: dit is het vierde artikel in de serie over Haiku.

Lijst met artikelen: eerste Het tweede Третья

Bron: www.habr.com

Voeg een reactie