Quel chargeur de démarrage est utilisé sur un Chromebook?

12

J'ai installé ChrUbuntu sur un Chromebook Acer C7 , et je suis en mesure de démarrer en double Ubuntu 12.04 et ChromeOS et de contrôler quel système d'exploitation se charge par défaut. J'ai essayé de modifier le /etc/default/grubfichier et je l' ai exécuté update-grubavec succès, mais je n'ai vu aucun effet. J'essayais d'activer un écran de chargement du système de style "dmesg" au lieu de l'écran de démarrage silencieux (pendant le démarrage d'Ubuntu). Je soupçonne que GRUB n'est pas le chargeur de démarrage sur la machine ou fonctionne comme un chargeur de démarrage secondaire assez tard uniquement sur la partition Linux. Je me rends compte que le Chromebook est un système assez fermé étroitement contrôlé par Google, mais comme il s'agit de Linux dans l'âme, les gens peuvent connaître la réponse.

Je n'ai pas assez besoin du démarrage verbeux de style "dmesg"; mais est devenu curieux au sujet du bootloading sur ce système.

PS Juste pour clarifier, j'essayais d'activer l'écran de chargement détaillé sur le démarrage d'Ubuntu sur la machine.

Haziz
la source
3
"Parce que les Chromebooks utilisent un BIOS et un chargeur de démarrage spéciaux qui sont distincts de ceux utilisés dans les ordinateurs portables Windows standard, vous ne pouvez pas les utiliser pour démarrer n'importe quel système d'exploitation. C'est là qu'intervient ChrUbuntu - c'est une version d'Ubuntu 12.04 LTS modifiée pour fonctionner avec du matériel Chrome OS. " ( voir ici )
sr_

Réponses:

6

ChromeOS utilise U-Boot:

"Chromium OS est essentiellement une distribution GNU / Linux spécialement adaptée. Nous voulons apporter le moins de modifications possible au noyau en amont, idéalement aucune. Mais comme avec tout autre système GNU / Linux, le processus de démarrage pré-noyau dépend inévitablement sur le matériel, le BIOS et le chargeur de démarrage. "

Bien que ChromeOS ait sa propre façon de démarrer sur mesure:

"Les appareils Google Chrome OS (x86 / x86_64 / arm) ont des BIOS personnalisés qui utilisent encore une autre méthode de démarrage pour garantir que l'utilisateur n'exécute que les bits prévus. Au lieu d'un chargeur de démarrage et d'un noyau séparés, il y a un blob binaire contenu dans sa propre partition GPT. Ce blob est signé de manière cryptographique et la signature est vérifiée avant le démarrage. "

Plus d'informations sur: http://www.chromium.org/chromium-os/chromiumos-design-docs/disk-format

user56801
la source
1
CoreBoot est la norme du firmware pour les Chromebooks - "BIOS" est techniquement inexact, mais j'ai compris l'essentiel.
mikeserv
@mikeserv qu'il cite dans les documents Chromium. De plus, il n'est pas nécessaire de commenter chaque réponse en disant qu'elle est juste - une simple augmentation de vote suffira.
strugee
Eh bien, vous ne pouvez pas arrêter un homme avec une mission, vous savez ...
mikeserv
1

Cela peut être assez déroutant, surtout rétrospectivement parce que mon Lenovo N22 (reks) avec chrx / Gallium se comporte comme vous vous attendez: Grub prend le relais lorsque le firmware cède le contrôle à l'OS. Mais cela ne s'applique pas au processus de démarrage de Chrome OS où le noyau prend directement le relais, jetez un œil à l'image et aux informations sur les différentes méthodes que j'ai publiées ici . Je n'ai pas approfondi les détails (et je ne le ferai probablement jamais), mais je suppose que puisqu'il utilisait le noyau Chrome OS pour démarrer Ubuntu (aucun chargeur de démarrage impliqué entre le firmware et le noyau), le noyau a été chargé de démarrer un autre système de fichiers racine que le Chrome OS un à l'époque.

L' auteur de ChrUbuntu a publié ce qui suit le 15 octobre 2013:

Depuis que j'ai commencé ChrUbuntu en décembre 2010, il a toujours été nécessaire d'utiliser le noyau Chrome OS Linux avec Ubuntu afin de résoudre certains problèmes de compatibilité avec l'architecture Chromebook. Cela a changé avec le Chromebook Pixel et les nouveaux Chromebooks basés sur Haswell comme l'Acer C720 et le Chromebook HP 14. Chacun de ces modèles prend en charge le démarrage à partir d'un mode BIOS PC plus traditionnel, ce qui facilite l'utilisation des noyaux Ubuntu stockés sur eux.

Je ne connais pas tous les détails, j'ai seulement testé un Chromebook basé sur ARM il y a longtemps avant d'avoir le N22 cette année, mon interprétation est qu'il s'agit de tout basé sur une carte de base glissante et plus tard ou sur leur plate- forme2 , comme indiqué dans la source référentiels.

LiveWireBT
la source
-1

Pas sûr à 100% mais le chargeur de démarrage est à l'intérieur du BIOS. Le noyau est directement chargé à partir de la partition, par exemple aucun système de fichiers. C'est la raison pour laquelle vous avez besoin de GPT au lieu d'une table de partition DOS normale.

pseudo
la source
1
c'est manifestement faux. veuillez lire ce qu'est un chargeur de démarrage, ce qu'est un BIOS et quelles sont les différences exactes entre GPT et MBR.
strugee
1
Merci pour -1. Le chargeur de démarrage Chromebook se compose de 3 parties. Un dans le BIOS en lecture seule, un dans le BIOS en lecture-écriture et un sur la partition EFI. La dernière (partition EFI) n'existe peut-être pas. Dans ce cas, la partie du BIOS en lecture-écriture démarrera la première partition "noyau Chromebook" marquée comme "bonne". Bootloader est un fork de "uboot"
Nick
1
De plus, comme vous êtes nouveau sur Stack Exchange, je dois mentionner qu'un downvote n'est pas une attaque personnelle, cela signifie simplement que celui qui a downvote pense que le message est factuellement faux (et le vote ne dit rien sur vos autres messages ou sur vous en tant que une personne). aussi, désolé d'être impoli dans mon commentaire précédent.
strugee
1
@strugee La plupart des Chromebooks sont en fait CoreBoot - ni UEFI ni BIOS. L'utilisateur #### ci-dessus a raison à propos de u-boot - c'est la charge utile CoreBoot sur les Chromebooks. Nick a une mauvaise terminologie - mais il y a beaucoup de manipulations dans le firmware que vous ne voyez pas ailleurs - par exemple, la réinitialisation aux valeurs par défaut du fabricant est une opération du firmware.
mikeserv
1
La situation est plus complexe, il existe différentes itérations de la plate-forme et différents composants ont été impliqués à l'époque. Je ne peux pas dire que j'aurais fait mieux à l'époque. Je viens de poster une nouvelle réponse, voici également un lien vers un aperçu de ce qui a été utilisé jusqu'à présent sur ces appareils: chromium.org/chromium-os/…
LiveWireBT