Quale Bootloader viene utilizzato su un Chromebook?


12

Ho installato ChrUbuntu su un Chromebook Acer C7 e sono in grado di eseguire il dual boot di Ubuntu 12.04 e ChromeOS e di controllare quale sistema operativo carica per impostazione predefinita. Ho provato a modificare il /etc/default/grubfile e ho eseguito update-grubcorrettamente ma non ho riscontrato effetti. Stavo cercando di abilitare una schermata di caricamento del sistema dettagliata "dmesg" invece della schermata di avvio silenziosa (durante l'avvio di Ubuntu). Ho il sospetto che GRUB non sia il bootloader sul computer o funzioni come bootloader secondario piuttosto tardi solo sulla partizione Linux. Mi rendo conto che il Chromebook è un sistema abbastanza chiuso strettamente controllato da Google, ma dal momento che è Linux nel cuore le persone potrebbero conoscere la risposta.

Non mi serve abbastanza lo stivale dettagliato in stile "dmesg"; ma è diventato curioso del bootloading su questo sistema.

PS Giusto per chiarire, stavo cercando di abilitare la schermata di caricamento dettagliata all'avvio di Ubuntu sulla macchina.


3
"Poiché i Chromebook utilizzano un BIOS e un bootloader speciali distinti da quelli utilizzati nei laptop Windows standard, non è possibile utilizzarli per avviare qualsiasi sistema operativo. È qui che entra in gioco ChrUbuntu: è una versione di Ubuntu 12.04 LTS modificata in funziona con l'hardware di Chrome OS. " ( vedi qui )
sr_13

Risposte:


6

ChromeOS utilizza U-Boot:

"Chromium OS è essenzialmente una distribuzione GNU / Linux appositamente studiata. Vogliamo apportare il minor numero possibile di modifiche al kernel upstream, idealmente nessuna. Ma come con qualsiasi altro sistema GNU / Linux, il processo di avvio pre-kernel è inevitabilmente dipendente su hardware, BIOS e bootloader. "

Sebbene ChromeOS abbia il suo modo personalizzato di avviare:

"I dispositivi Google Chrome OS (x86 / x86_64 / arm) hanno BIOS personalizzati che utilizzano ancora un altro metodo di avvio per garantire che l'utente stia eseguendo solo i bit previsti. Invece di un bootloader e un kernel separati, c'è un BLOB binario contenuto in la propria partizione GPT. Quel BLOB è crittografato e la firma viene verificata prima dell'avvio. "

Maggiori informazioni su: http://www.chromium.org/chromium-os/chromiumos-design-docs/disk-format


1
CoreBoot è la norma del firmware per i Chromebook: "BIOS" è tecnicamente impreciso, ma ho capito.
Mikeserv,

@mikeserv sta citando dai documenti di Chromium. inoltre, non è necessario commentare ogni risposta dicendo che è giusto: basterà un semplice voto.
strugee,

Beh, non puoi fermare un uomo con una missione, sai ...
Mikeserv,

1

Può essere abbastanza confuso, soprattutto a posteriori perché il mio Lenovo N22 (reks) con chrx / Gallium si comporta come dovrebbe essere: Grub prende in carico l'avvio quando il firmware passa il controllo al sistema operativo. Ma questo non si applica al processo di avvio di Chrome OS in cui il kernel prende direttamente il controllo, dai un'occhiata all'immagine e alle informazioni sui diversi metodi che ho pubblicato qui . Non ho approfondito i dettagli (e probabilmente non lo farò mai), ma immagino che dal momento che stava usando il kernel Chrome OS per avviare Ubuntu (nessun bootloader coinvolto tra firmware e kernel) al kernel è stato chiesto di avviare un altro filesystem di root di il Chrome OS uno allora.

L' autore di ChrUbuntu ha pubblicato quanto segue il 15 ottobre 2013:

Da quando ho avviato ChrUbuntu nel dicembre 2010, è sempre stato necessario utilizzare il kernel Chrome OS Linux con Ubuntu per risolvere alcuni problemi di compatibilità con l'architettura Chromebook. Ciò è cambiato con il Chromebook Pixel e i più recenti Chromebook basati su Haswell come Acer C720 e HP Chromebook 14. Ognuno di questi modelli supporta l' avvio da una modalità BIOS del PC più tradizionale che semplifica l'utilizzo di kernel Ubuntu standard su di essi.

Non conosco tutti i dettagli, ho testato un Chromebook basato su ARM molto tempo fa prima di ottenere l'N22 quest'anno, la mia interpretazione è che si tratta di tutto ciò che si basa su una scheda di base scivolosa e successiva o sulla loro piattaforma2, come indicato nella fonte repository.


-1

Non sicuro al 100% ma il bootloader è all'interno del BIOS. Il kernel viene caricato direttamente dalla partizione, ad es. Nessun file system. Questo è il motivo per cui è necessario GPT invece della normale tabella delle partizioni DOS.


1
questo è palesemente falso. per favore, fai qualche lettura su cos'è un bootloader, cos'è un BIOS e quali sono le differenze esatte tra GPT e MBR.
strugee,

1
Bene grazie per -1. Il bootloader del Chromebook ha 3 parti. Uno nel BIOS di sola lettura, uno nel BIOS di lettura-scrittura e uno nella partizione EFI. L'ultima (partizione EFI) potrebbe non esistere. In questo caso la parte dal BIOS read-write avvierà la prima partizione "kernel Chromebook" contrassegnata come "buona". Bootloader è fork di "uboot"
Nick

1
inoltre, dato che sei nuovo su Stack Exchange, dovrei menzionare che un downvote non è un attacco personale, significa solo che chiunque lo abbia declassato ritiene che il post sia effettivamente errato (e il voto non dice nulla sugli altri tuoi post o su come una persona). inoltre, scusami per essere stato scortese nel mio commento precedente.
strugee,

1
@strugee La maggior parte dei Chromebook sono in realtà CoreBoot, né UEFI né BIOS. l'utente #### sopra ha ragione su u-boot: è il payload CoreBoot sui Chromebook. Nick ha un po 'di terminologia sbagliata, ma nel firmware è molto gestita che non si vede altrove, ad esempio ripristinare le impostazioni predefinite del produttore è un'operazione del firmware.
Mikeserv,

1
La situazione è più complessa, ci sono diverse iterazioni della piattaforma e ci sono stati diversi componenti coinvolti al momento. Non posso dire che avrei fatto di meglio in quel momento. Ho appena pubblicato una nuova risposta, ecco anche un link a una panoramica di ciò che è stato finora utilizzato su questi dispositivi: chromium.org/chromium-os/…
LiveWireBT
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.