Il mio quarto giorno con Haiku: problemi con l'installazione e il boot

Il mio quarto giorno con Haiku: problemi con l'installazione e il boot

TL;DR: dopo alcuni giorni di esperimenti con Haiku ho deciso di installarlo su un SSD separato. Ma non è stato affatto semplice.

Il mio quarto giorno con Haiku: problemi con l'installazione e il boot
È in corso un intenso lavoro per verificare l'avvio di Haiku.

Tre giorni fa ho scoperto Haiku, un sistema operativo incredibilmente valido per PC. È il quarto giorno e desidero fare più «lavoro reale» con questo sistema, e la partizione dell'immagine Anyboot è troppo piccola per questo. Così prendo in mano un nuovissimo SSD da 120GB, mi preparo per un'installazione fluida... e mi aspetta una delusione!

L'installazione e l'avvio di solito ricevono grande attenzione e amore, poiché sono le prime e più importanti impressioni. Spero che il protocollo della mia esperienza da "principiante" possa risultare utile al team di sviluppatori di Haiku nei loro sforzi continui per perfezionare un sistema operativo che "funziona semplicemente". Prenderò su di me tutti gli errori!
A mio avviso, la situazione con l'avvio da USB sarà particolarmente importante, poiché non tutti gli utenti sono pronti a utilizzare il disco SATA principale (e non parliamo nemmeno del NVME...) per esperimenti con un sistema operativo completamente nuovo. Ritengo che l'avvio da USB sia lo scenario più probabile per la maggior parte degli utenti che decidono di provare Haiku su hardware reale. Gli sviluppatori dovrebbero prestare seriamente attenzione a questo.

Commento dello sviluppatore:

Abbiamo appena iniziato a supportare EFI, scrivendo rapidamente una versione beta che si avvia su macchine compatibili con EFI. I risultati ottenuti sono ancora lontani dal livello di supporto desiderato. Non so se dovremmo documentare il lavoro attuale, o concentrarci semplicemente sul raggiungimento di un risultato accettabile, dopo di che documentare tutto.

Sembra ragionevole, e c'è la speranza che alla fine tutto sarà molto meglio di adesso. Per ora posso solo verificare ciò che è stato fatto finora. Cominciamo...

L'immagine Anyboot è troppo piccola

Nonostante l'immagine Anyboot si scriva sorprendentemente facilmente su una normale chiavetta USB, non c'è abbastanza spazio sulla partizione di Haiku per installare software aggiuntivo.

Il mio quarto giorno con Haiku: problemi con l'installazione e il boot
Scrivere l'immagine Anyboot sulla chiavetta è fondamentalmente abbastanza semplice, ma alla fine manca spazio per un lavoro reale.

Soluzione rapida: aumentare le dimensioni della partizione Haiku di default.

Quindi, per lavorare realmente con Haiku, è comunque necessario installarlo utilizzando l'applicazione Installer.

L'Installer non fa tutto il necessario in un unico posto

Ricordate il fantastico installer di Mac OS X?

Il mio quarto giorno con Haiku: problemi con l'installazione e il boot
Installer Mac OS X 10.2

Esso:

  • inizializza i dischi (scrive GPT, tabella delle partizioni GUID)
  • crea partizioni (EFI, principale) usando il «buon senso» (per il miglior utilizzo del disco)
  • contrassegna la partizione di avvio (imposta il flag bootable su di essa)
  • copia i file

In altre parole, fa «tutto» senza complicazioni per l'utente.

D'altra parte c'è l'Installer per Haiku, che semplicemente copia i file e lascia all'utente il compito di tutto il resto, troppo complesso, e che anche con esperienza non si riesce a comprendere subito. Soprattutto se si ha bisogno di un sistema avviabile sia su sistemi con BIOS che su EFI.

Cosa devo fare?

Non lo dirò con certezza, ma in ogni caso, presumo questo:

  1. Aprire DriveSetup
  2. Selezionare il dispositivo per l'installazione
  3. Disco->Inizializza->GUID Partition Map…->Continua->Scrivi modifiche->OK
  4. Click destro su uno spazio vuoto del dispositivo dove sarà installato il sistema
  5. Crea…->Inserisco 256 come dimensione->EFI system data (non sono completamente sicuro)->Scrivi modifiche
  6. Click destro su «EFI system data» sul dispositivo dove sarà installato il sistema
  7. Inizializza->FAT32 File System…->Continua->Inserisco nome: «EFI», dimensione FAT: 32->Formatta->Scrivi modifiche
  8. Ripeto click destro su uno spazio vuoto sul dispositivo desiderato
  9. Crea…->Inserisco nome della partizione: Haiku, tipo di partizione: Be File System->Crea->Scrivi modifiche
  10. Click destro su EFI->Collega
  11. Avvio l'Installer->confuso dal tecnoslang->Continua->Su disco: Haiku (ho verificato che sia la stessa partizione che ho creato prima)->Installa
  12. Nella gestione file copio la cartella EFI dal sistema attuale sulla partizione EFI (presumo che sia necessario per l'avvio con EFI)
  13. [nota dell'autore: ho rimosso questo punto dalla traduzione; in breve — l'autore non ha completamente padroneggiato la creazione di un sistema ibrido per l'avvio sia ad EFI che a BIOS]
  14. spengo
  15. collego il disco appena creato alla porta da cui il sistema si avvierà certamente [strano, non ho dovuto farlo. — nota dell'autore]
  16. accendo

Mi sembra chiaro: abbiamo bisogno di uno strumento che faccia tutto con un solo clic, con una conferma tempestiva (!) che si può cancellare il dispositivo.

Soluzione "rapida": creare un installer automatico che faccia tutto.

Beh, anche se non è "rapido", deve essere degno. Queste sono le prime impressioni dal nuovo sistema. Se non riesci a installare (e a me è successo diverse volte) — molti se ne andranno in silenzio per sempre.

Chiarimento tecnico riguardo a DriveSetup secondo PulkoMandy

BootManager registra un menu di avvio completo, inclusa la possibilità di avviare più sistemi da disco, per questo gli servono circa 2 KB all'inizio del disco. Questo è valido per i vecchi schemi di partizionamento, ma non per GPT, che utilizza gli stessi settori per la tabella delle partizioni. D'altra parte, writembr scrive un codice molto semplificato su disco, che trova semplicemente la partizione attiva e continua il caricamento da essa. Questo codice richiede solo i primi 400 byte sul disco, quindi non si sovrappone a GPT. Ha supporto limitato per i dischi con partizionamento GPT (ma per casi semplici andrà tutto bene).

Soluzione rapida: lasciare che l'interfaccia grafica per la configurazione di BootManager scriva sul disco tutto ciò che viene installato con writembr, se viene rilevato il partizionamento GPT. Non è necessario scrivere un codice di 2 KB su dischi GPT. Non è necessario impostare il flag bootable sulla partizione EFI, solo sulla partizione Haiku.

Primo tentativo: kernel panic

Apparecchiatura

  • Acer TravelMate B117 N16Q9 (venduto con EndlessOS)
  • lspci
  • lsusb
  • il sistema esistente è stato avviato da una chiavetta Kingston DataTraveler 100 da 16 GB, creata da un'immagine Anyboot usando Etcher su Linux, inserita in una porta USB2.0 (perché non si avviava dalla porta USB3)
  • SSD Kingston A400 da 120 GB, solo di fabbrica, collegato a un adattatore sata-usb3 ASMedia ASM2115, collegato a una porta USB3 nel TravelMate B117.

Risultati

L'installer avvia la copia dei file, poi si verifica un errore di input/output, accompagnato da kernel panic

Il mio quarto giorno con Haiku: problemi con l'installazione e il boot
kernel panic

Secondo tentativo: disco non avviabile

Apparecchiatura

Tutto come prima, ma l'SSD è collegato a un adattatore, che è collegato a un USB2.0 Hub, inserito in una porta USB3 nel TravelMate. Ho verificato con una chiavetta di installazione con Windows che questa macchina si avvia da USB3.

Risultati

Sistema non avviabile. Il partizionamento del disco sembra essersi corrotto a causa di BootManager.

Il mio quarto giorno con Haiku: problemi con l'installazione e il boot
BootManager. "Scrivi menu di avvio" cosa, distrugge il partizionamento del disco?!

Terzo tentativo: wow, si avvia! Ma non attraverso la porta USB3 su questa macchina

Apparecchiatura

Tutto come nel secondo tentativo, ma questa volta non utilizzo affatto BootManager.
La partizione senza l'avvio di BootManager appare così, se controllata da Linux.

Il mio quarto giorno con Haiku: problemi con l'installazione e il boot
La sezione «efi» con file system FAT32 è contrassegnata come avviabile senza utilizzare BootManager. Si avvierà su una macchina non-EFI?

Risultati

  • Modalità EFI, porta USB2: avvio diretto in Haiku
  • Modalità EFI, hub USB2 collegato alla porta USB3: Messaggio «no boot path found, scan for all partitions…», seguito dallo schermo di avvio con «Select boot volume (Current: haiku)». Il pulsante «Continue booting» è grigio, non cliccabile. Se si seleziona nella lista «Select Boot Volume» -> Haiku (Current: Latest state)->Latest state ->Return to main menu->Continue booting — si avvia direttamente in Haiku. È interessante perché non riesce a «semplicemente avviarsi», ma richiede danze con il tamburo? Soprattutto considerando che sullo schermo di avvio è chiaramente stato automaticamente trovato il partizione di avvio. Un bug nel software?
  • Modalità EFI, porta USB3: avvio diretto in Haiku. Oh, quanto sono felice... Prematuramente, come si è rivelato. Viene mostrato uno schermo blu, ma per un tempo molto lungo non succede nulla. Il cursore-«dito» è bloccato a metà dello schermo e non si muove. L'adattatore sata-usb3 lampeggia. Si è concluso con un kernel panic. L'immagine Anyboot su una chiavetta USB3 non è nemmeno stata riconosciuta come avviabile sull'attuale hardware. Beh, questo è un bug! A questo proposito ho aperto richiesta.

Il mio quarto giorno con Haiku: problemi con l'installazione e il boot
Kernel panic durante l'avvio dalla porta USB3.

È sorprendente — è ancora possibile digitare comandi, ma dovrò usare la tastiera in inglese. Quindi, faccio come consigliato:

Il mio quarto giorno con Haiku: problemi con l'installazione e il boot
didascalia per l'immagine: output syslog | tail 15 — mentre il kernel è in panico

Chiamata al comando reboot, purtroppo, non funziona.

Quarto tentativo: seconda macchina

Ho trasferito lo stesso disco (esattamente funzionante) su un'altra macchina, dove ho verificato il funzionamento con diverse porte.

Apparecchiatura

Tutto come nel terzo tentativo, ma su Acer Revo One RL 85.

Risultati

  • Modalità EFI, porta USB2: Messaggio «no boot path found, scan for all partitions…», seguito dallo schermo di avvio con «Select boot volume (Current: haiku)». Il pulsante «Continue booting» è grigio, non cliccabile. Se si seleziona nella lista «Select Boot Volume» -> Haiku (Current: Latest state)->Latest state ->Return to main menu->Continue booting — si avvia direttamente in Haiku. Lo spegnimento si blocca sul messaggio «Shutting down…».
  • Modalità EFI, hub USB2 collegato alla porta USB3: è necessaria una chiarificazione
  • Modalità EFI, porta USB3: Messaggio "nessun percorso di avvio trovato, scansione per tutte le partizioni ...", seguito dalla schermata di avvio con "Seleziona volume di avvio (Attuale: haiku)". Il pulsante "Continua l'avvio" è grigio e non è cliccabile. Se seleziono dall'elenco "Seleziona volume di avvio" -> Haiku (Attuale: stato più recente) -> Stato più recente -> Torna al menu principale -> Continua l'avvio — si avvia direttamente in Haiku.
    Notiamo che, a differenza del primo sistema, c'è un avvio normale fino al desktop senza kernel panic. Lo spegnimento si blocca sul messaggio "Spegnimento in corso".
  • Modalità EFI, porta SATA: Si avvia direttamente in Haiku. Lo spegnimento si blocca sul messaggio "Spegnimento in corso ...".
  • Modalità CSM BIOS, porta USB2: necessita di chiarimenti
  • Modalità CSM BIOS, hub USB2 collegato alla porta USB3: necessita di chiarimenti
  • Modalità CSM BIOS, porta USB3: necessita di chiarimenti
  • Modalità CSM BIOS, porta SATA: Schermo nero con la scritta "Riavvia e seleziona il dispositivo di avvio corretto o inserisci il supporto di avvio nel dispositivo selezionato e premi un tasto". Proviene da CSM BIOS? [Sì, esattamente lo stesso messaggio restituisce il mio sistema se non trova il bootloader. — nota del traduttore]

Quinta prova: terza macchina

Ho trasferito questo stesso disco sulla terza macchina, controllato su porte diverse.

Apparecchiatura

Lo stesso di quanto accaduto nella terza prova, ma su Dell Optiplex 780. Se non erro, su questa macchina c'è un EFI precoce, che sembra sempre funzionare in modalità CSM BIOS.

Risultati

  • Porta USB2: avvio di Haiku
  • Porta USB3 (tramite scheda PCIe, Renesas Technology Corp. uPD720202 USB 3.0 Host Controller): necessita di chiarimenti
  • Porta SATA: richiede chiarimenti

Sesta prova, quarto macchina, MacBook Pro

Apparecchiatura

Tutto come nella terza prova, ma con MacBookPro 7.1

Risultati

Il mio quarto giorno con Haiku: problemi con l'installazione e il boot
Come il Mac rileva la chiavetta USB con Haiku.

  • Modalità CSM ("Windows"): schermo nero con la scritta "Nessun dispositivo avviabile — inserire il disco di avvio e premere un tasto qualsiasi". Proviene da Apple CSM?
  • Modalità UEFI ("EFI Boot"): si arresta sulla schermata di selezione del dispositivo di avvio.

Settima prova, netbook Lenovo con processore Atom a 32 bit

Apparecchiatura

  • Chiavetta USB Kingston DataTraveler 100 da 16 GB, realizzata su Linux con Etcher, utilizzando l'immagine a 32 bit Anyboot da qui.

  • Netbook Lenovo ideapad s10 basato su processore Atom senza disco rigido.

  • lspci di questa macchina, registrato su linux.

  • lsusb

    00:1d.7 controller USB: Intel Corporation NM10/ICH7 Family USB2 EHCI Controller (rev 02) (prog-if 20 [EHCI])
    Sottosistema: Lenovo NM10/ICH7 Family USB2 EHCI Controller
    Controllo: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
    Stato: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- SERR- <PERR- INTx-
    Latente: 0
    Interruzione: pin A instradato a IRQ 23
    Regione 0: Memoria a f0844000 (32-bit, non prefetchable) [dimensione=1K]
    Capacità: [50] Versione 2 di gestione energetica
        Flag: PMEClk- DSI- D1- D2- AuxCurrent=375mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
        Stato: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
    Capacità: [58] porta debug: BAR=1 offset=00a0
    Driver del kernel in uso: ehci-pci

Risultati

Il caricamento è in corso, poi si verifica un kernel panic, comando syslog|tail 15 mostra kDiskDeviceManager::InitialDeviceScan() fallito: Nessun file o directory di questo tipo dopo diversi errori ATA. Nota: ho provato a caricare da USB, non da SATA.

Il mio quarto giorno con Haiku: problemi con l'installazione e il boot
Kernel panic sul netbook Lenovo ideapad s10 durante il caricamento da una chiavetta USB.

Per divertimento ho inserito il disco nella porta SATA, ma non ho notato differenze significative rispetto alla chiavetta. Anche se ho ricevuto messaggi diversi utilizzando il comando syslog|tail 15 (ha detto che ha trovato /dev/disk/ata/0/master/1).

mr. waddlesplash mi ha chiesto di eseguire il comando `syslog | grep usb per questo caso, quindi ecco i risultati. Sono ancora felice di poter eseguire comandi simili sullo schermo con kernel panic.

Il mio quarto giorno con Haiku: problemi con l'installazione e il boot
Il mio quarto giorno con Haiku: problemi con l'installazione e il boot

Secondo il signor waddlesplash questo errore EHCI è lo stesso di questa segnalazione

Ottava prova: netbook MSI con processore Atom a 32 bit

Apparecchiatura

Come prima

  • Netbook Medion Akoya E1210 (sotto l'etichetta MSI Wind U100) con disco installato (che non utilizzo per Haiku).
  • lspci di questa macchina
  • lsusb di questa macchina
    00:1d.7 controller USB: Intel Corporation NM10/ICH7 Family USB2 EHCI Controller (rev 02) (prog-if 20 [EHCI])
    Sottosistema: Micro-Star International Co., Ltd. [MSI] NM10/ICH7 Family USB2 EHCI Controller
    Controllo: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
    Stato: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- SERR- <PERR- INTx-
    Latente: 0
    Interruzione: pin A instradato a IRQ 23
    Regione 0: Memoria a dff40400 (32 bit, non prefetched) [dimensione=1K]
    Capacità: [50] Versione di Power Management 2
        Flag: PMEClk- DSI- D1- D2- AuxCurrent=375mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
        Stato: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
    Capacità: [58] Porta di debug: BAR=1 offset=00a0
    Driver del kernel in uso: ehci-pci

Risultati

Carica nell'Installer Haiku. Funziona il TouchPad! (ad esempio, lo scorrimento). La scheda video è stata riconosciuta come Intel GMA (i945GME).

Nona prova: chiavetta USB con immagine a 32 bit su MacBook Pro

Apparecchiatura

  • Come prima.
  • MacBook 7.1

Risultati

Schermo nero con il messaggio «No bootable drive — insert boot disk and press any key».

Nota: tastiera Apple

Nell'angolo in basso a sinistra di qualsiasi tastiera nella riga inferiore ci sono i seguenti tasti:
non-Apple: Ctrl-Fn-Windows-Alt-Sbarra spaziatrice
Apple: Fn-Ctrl-(Option o Alt)-Command-Sbarra spaziatrice

Sarebbe fantastico se tutte le tastiere su Haiku si comportassero allo stesso modo, così da poterle utilizzare senza differenze, indipendentemente da ciò che è effettivamente stampato su di esse.
Sulla tastiera Apple il tasto Alt non si trova immediatamente a sinistra della barra spaziatrice (al suo posto c'è il tasto Command).
In questo caso avrei scoperto che in Haiku verrebbe automaticamente utilizzato il tasto Command invece del tasto Alt. Quindi, lavorando con la tastiera Apple, avrei percepito la tastiera come non-Apple.
È ovvio che nelle impostazioni ci sono diverse opzioni, ma sarebbe preferibile avere un riconoscimento automatico e un adattamento, dato che si tratta pur sempre di USB, alla fine dei conti.

Nota: writembr per il ripristino?

Ho sentito che con il comando writembr si può rendere il sistema (funzionante con EFI) avviabile dal 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

Sembra buono, ma alla fine il sistema non riesce ancora a partire, come prima. Potrebbe essere perché l'avvio tramite BIOS funziona solo con il partizionamento corretto, e non con GPT? [dovrei provare il MBR protettivo… — nota del traduttore]

Conclusione

Haiku è straordinario, ma per avere un'esperienza di installazione serve un approccio serio. Inoltre, il processo di avvio è una lotteria, con probabilità di successo di circa 1/3, e non importa se hai USB2 (netbook su Atom) o USB3 (Acer TravelMate). Ma almeno, uno degli sviluppatori ha lo stesso hardware. Spero che la mia esperienza da "n00b" possa aiutare gli sviluppatori a capire cosa serve ai "comuni mortali", e anche a rendere il risultato altrettanto elegante quanto l'installer di Mac OS X. Non dimentichiamo che non è nemmeno la versione 1.0, quindi va molto bene!

Provate voi stessi! Infatti, il progetto Haiku offre immagini da scaricare su DVD o USB, generate quotidianamente. Per installare, basta scaricare l'immagine e scriverla su una chiavetta usando Etcher

Hai domande? Ti invitiamo nel canale telegram in lingua russa telegram-канал.

Panoramica degli errori: Come spararsi un colpo in C e C++. Raccolta di ricette Haiku OS

Da autore traduzione: questo è il quarto articolo di una serie su Haiku.

Elenco degli articoli: La prima Secondo Terzo

Fonte: habr.com

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster