Welcher Bootloader wird auf einem Chromebook verwendet?

12

Ich habe ChrUbuntu auf einem Acer C7 Chromebook installiert und kann Ubuntu 12.04 und ChromeOS dual booten und steuern, welches Betriebssystem standardmäßig geladen wird. Ich habe versucht, die /etc/default/grubDatei zu bearbeiten und bin update-gruberfolgreich gelaufen, habe aber keine Auswirkungen festgestellt. Ich habe versucht, einen ausführlichen Systemladebildschirm im "dmesg" -Stil anstelle des stillen Begrüßungsbildschirms zu aktivieren (während des Ubuntu-Startvorgangs). Ich vermute, dass GRUB nicht der Bootloader auf dem Computer ist oder nur auf der Linux-Partition als relativ später sekundärer Bootloader fungiert. Mir ist klar, dass das Chromebook ein ziemlich geschlossenes System ist, das von Google streng kontrolliert wird, aber da es sich im Grunde um Linux handelt, wissen die Leute vielleicht die Antwort.

Ich brauche den "dmesg" -Stil nicht schlecht genug; wurde aber neugierig auf das Booten auf diesem System.

PS Um das zu verdeutlichen, habe ich versucht, den ausführlichen Ladebildschirm für den Ubuntu-Start auf dem Computer zu aktivieren.

haziz
quelle
3
"Da Chromebooks ein spezielles BIOS und einen speziellen Bootloader verwenden, die sich von denen unterscheiden, die in Standard-Windows-Laptops verwendet werden, können Sie damit nicht jedes Betriebssystem starten. Hier kommt ChrUbuntu ins Spiel - es handelt sich um eine Version von Ubuntu 12.04 LTS, die auf modifiziert wurde mit Chrome OS-Hardware arbeiten. " ( siehe hier )
sr_

Antworten:

6

ChromeOS verwendet U-Boot:

"Chromium OS ist im Wesentlichen eine speziell zugeschnittene GNU / Linux-Distribution. Wir möchten so wenig Änderungen wie möglich am vorgelagerten Kernel vornehmen, im Idealfall keine. Aber wie bei jedem anderen GNU / Linux-System ist der Startprozess vor dem Kernel unvermeidlich abhängig auf der Hardware, dem BIOS und dem Bootloader. "

Obwohl ChromeOS eine eigene, maßgeschneiderte Art des Bootens hat:

"Google Chrome OS-Geräte (x86 / x86_64 / arm) verfügen über benutzerdefinierte BIOS, die eine weitere Startmethode verwenden, um sicherzustellen, dass der Benutzer nur die gewünschten Bits ausführt. Anstelle eines separaten Bootloaders und Kernels ist ein Binär-Blob in enthalten eine eigene GPT-Partition. Dieser Blob ist kryptografisch signiert und die Signatur wird vor dem Booten überprüft. "

Weitere Informationen unter: http://www.chromium.org/chromium-os/chromiumos-design-docs/disk-format

user56801
quelle
1
CoreBoot ist die Firmware-Norm für Chromebooks - "BIOS" ist technisch ungenau, aber ich habe das Wesentliche verstanden.
mikeserv
@mikeserv zitiert er aus den Chromium-Dokumenten. Außerdem müssen Sie nicht zu jeder Antwort einen Kommentar abgeben, der besagt, dass sie richtig ist - eine einfache Aufwertung wird ausreichen.
Strugee
Nun, Sie können einen Mann mit einer Mission nicht aufhalten, wissen Sie ...
mikeserv
1

Es kann ziemlich verwirrend sein, besonders im Nachhinein, da sich mein Lenovo N22 (reks) mit chrx / Gallium so verhält, wie Sie es erwarten: Grub übernimmt das Booten, wenn die Firmware die Kontrolle an das Betriebssystem übergibt. Dies gilt jedoch nicht für den Chrome OS- Startvorgang, bei dem der Kernel direkt die Aufgabe übernimmt. Schauen Sie sich das Bild und die Informationen zu den verschiedenen Methoden an, die ich hier veröffentlicht habe . Ich habe mich nicht eingehender mit den Details befasst (und werde es wahrscheinlich nie tun), aber ich vermute, da der Kernel den Chrome OS-Kernel zum Booten von Ubuntu verwendete (kein Bootloader zwischen Firmware und Kernel), wurde er angewiesen, ein anderes Root-Dateisystem als zu booten das Chrome OS damals.

Der ChrUbuntu- Autor hat am 15. Oktober 2013 Folgendes gepostet :

Seitdem ich ChrUbuntu im Dezember 2010 gestartet habe, war es immer notwendig, den Chrome OS Linux-Kernel mit Ubuntu zu verwenden, um einige Kompatibilitätsprobleme mit der Chromebook-Architektur zu lösen. Das hat sich mit dem Chromebook Pixel und den neueren Haswell-basierten Chromebooks wie dem Acer C720 und dem HP Chromebook 14 geändert. Jedes dieser Modelle unterstützt das Booten von einem traditionelleren PC-BIOS-Modus , wodurch die Verwendung von Ubuntu-Kerneln auf einfache Weise möglich wird.

Ich kenne nicht alle Details, ich habe erst vor langer Zeit ein ARM-basiertes Chromebook getestet, bevor ich dieses Jahr das N22 bekommen habe. Meine Interpretation ist, dass es sich um alles handelt, was auf einem rutschigen und späteren Basisboard oder dessen Plattform2 basiert, wie in der Quelle vermerkt Repositories.

LiveWireBT
quelle
-1

Nicht 100% sicher, aber der Bootloader befindet sich im BIOS. Kernel wird direkt von Partition geladen, zB kein Dateisystem. Aus diesem Grund benötigen Sie GPT anstelle der normalen DOS-Partitionstabelle.

Nick
quelle
1
das ist offensichtlich falsch. Lesen Sie bitte, was ein Bootloader ist, was ein BIOS ist und worin die genauen Unterschiede zwischen GPT und einem MBR bestehen.
Strugee
1
Na danke für -1. Der Chromebook-Bootloader besteht aus 3 Teilen. Eines im schreibgeschützten BIOS, eines im schreibgeschützten BIOS und eines auf der EFI-Partition. Die letzte (EFI-Partition) ist möglicherweise nicht vorhanden. In diesem Fall bootet der Teil aus dem Lese- / Schreib-BIOS die erste "Chromebook-Kernel" -Partition, die als "gut" markiert ist. Bootloader ist Gabel von "Uboot"
Nick
1
Da Sie neu bei Stack Exchange sind, sollte ich erwähnen, dass ein Downvote kein persönlicher Angriff ist, sondern nur bedeutet, dass derjenige, der den Beitrag abgelehnt hat, der Meinung ist, dass er sachlich falsch ist (und die Abstimmung sagt nichts über Ihre anderen Beiträge oder Sie als eine Person). Entschuldigen Sie auch, dass Sie in meinem früheren Kommentar unhöflich waren.
Strugee
1
@strugee Die meisten Chromebooks sind eigentlich CoreBoot - weder UEFI noch BIOS. Benutzer #### oben hat Recht mit U-Boot - es ist die CoreBoot- Nutzlast auf Chromebooks. Nick hat eine falsche Terminologie - aber es wird eine Menge in der Firmware behandelt, die Sie an keiner anderen Stelle sehen - zum Beispiel ist das Zurücksetzen auf die Herstellervorgaben ein Firmware-Vorgang.
mikeserv
1
Die Situation ist komplexer, es gibt verschiedene Iterationen der Plattform und es waren zu der Zeit verschiedene Komponenten involviert. Ich kann nicht sagen, dass es mir damals besser gegangen wäre. Ich habe gerade eine neue Antwort gepostet. Hier ist auch ein Link zu einer Übersicht, was bisher auf diesen Geräten genutzt wurde: chromium.org/chromium-os/…
LiveWireBT