Difference between revisions of "Installing/Preparing"

From GalliumOS Wiki
Jump to: navigation, search
m (ColtonDRG moved page Preparing for GalliumOS to Installing/Preparing)
(Step 2b: Install/Update Firmware)
(13 intermediate revisions by 5 users not shown)
Line 1: Line 1:
If you have already used Linux on your Chromebook in the past (Crouton does NOT count), you probably don't need to do this. This article will cover the very minimal requirements for making it work on each generation of Chromebook. This means we won't flash any firmware if we don't need to. If you want instructions for flashing firmware, see [[Flashing Firmware]]. Please note that this process can be very dangerous, so please carefully read everything and do not skip any steps. We are not responsible if you brick your Chromebook, even though we think it sucks that you did. Dispite the fact that the Chromebook Pixel and 2015 Chromebook Pixel are Sandy Bridge and Broadwell respectively, you should use the Haswell process for both of them. We know this doesn't make any sense, but just trust us.
+
__NOTOC__
 +
To install any new operating system onto your ChromeOS device, you must first enable Developer Mode. '''Many''' models also require updating firmware, depending on the install type.
 +
 
 +
To determine what preparation steps your device requires, you will need to know your device's Hardware ID. This is available from inside ChromeOS by navigating to <code>chrome://system</code>, where it's called <code>hardware_class</code>.
 +
 
 +
Next, check our [[Hardware Compatibility]] page to determine your device's CPU family. For example, the Acer C720's Hardware ID is <code>PEPPY</code>, and the CPU Family is <code>Haswell</code>.
 +
 
 +
Armed with this information, we can begin:
 +
 
 +
== Step 1: Enable Developer Mode ==
 +
 
 +
'''WARNING''': Enabling Developer Mode will erase all user data in ChromeOS. If you have locally-stored data, back it up first. Cloud data will not be lost.
 +
 
 +
# With device shut down, press Esc+F3(refresh)+Power to boot into Recovery Mode
 +
# You will see the Recovery Mode boot screen, informing you that "ChromeOS is damaged or missing" (although it is not)
 +
# Press [Ctrl+D] to enable Developer Mode, then follow confirmation steps (usually just pressing enter)
 +
# Your machine will reboot to a white screen which says "OS verification is OFF". This is Developer Mode.
 +
# Enable Legacy Mode booting (you can skip this step if updating firmware, since it will be done automatically for you)
 +
## Press [Ctrl+D] to boot ChromeOS in '''D'''eveloper Mode
 +
## Configure WiFi if necessary, and log in to Chrome (Guest account is fine)
 +
## Press [Ctrl+Alt+T] to get a ChromeOS terminal ("crosh") window
 +
## At the prompt, enter <code>shell</code>
 +
## At the <code>chronos@localhost / $</code> prompt, run the following:
 +
##* <code>sudo crossystem dev_boot_legacy=1</code>
 +
 
 +
== Step 2: Flash Firmware (if required or desired) ==
 +
 
 +
Here's where you'll need to know your Hardware ID and CPU Family.
 +
 
 +
* '''Sandy Bridge''' models '''require''' custom firmware (exception: LINK)
 +
* '''Bay Trail''' and '''Braswell''' models '''require''' custom firmware
 +
* '''Haswell''', '''Broadwell''', and '''Skylake''' models can ''benefit'' from custom firmware; some models require it depending on install type.  See: [[Hardware_Compatibility]]
 +
 
 +
Custom firmware (for many models) is available in multiple types and from multiple sources. See [[Firmware]] for more discussion.
 +
 
 +
=== Step 2a: Disable write-protection (if required) ===
 +
 
 +
Some types of firmware update (<code>BOOT_STUB</code> and <code>Full ROM</code>) require disabling firmware write-protection on your device. Be sure to read the [[Firmware]] page first! Write protection (WP) on ChromeOS devices is usually controlled by a screw on the motherboard, but some models also have conductive stickers, and a few older models have a jumper. The location and appearance of the WP screw/sticker/jumper vary between models, but in all cases you will need to open your device.
 +
 
 +
A web search for "<model or hardware id> chromebook disable write-protect" will often return detailed instructions, with photos, for your model. If not, feel free to ask for help in [https://reddit.com/r/GalliumOS /r/GalliumOS] or [https://galliumos.org/irc #galliumos].
 +
 +
=== Step 2b: Install/Update Firmware ===
 +
 
 +
You can install/update your firmware from the ChromeOS terminal, or from a running Linux system. These instructions describe the process from the ChromeOS terminal.
 +
 
 +
# Boot into ChromeOS by pressing [Ctrl+D] at the "OS verification is OFF" Developer Mode boot screen
 +
# Configure WiFi if necessary, and log in to Chrome (Guest account is fine)
 +
# Press [Ctrl+Alt+T] to get a ChromeOS terminal ("crosh") window
 +
# At the prompt, enter <code>shell</code>
 +
# Decide which firmware you want to install. See [[Firmware]].
 +
# At the <code>chronos@localhost / $</code> prompt, run the command to flash your firmware. These commands are current as of this writing, but be sure to check the developer's site for any changes.
 +
# Run MrChromebox's Firmware Utility Script [https://mrchromebox.tech/#fwscript (developer's site)]
 +
#*<code>cd; curl -LO https://mrchromebox.tech/firmware-util.sh && sudo bash firmware-util.sh</code>
 +
# Then follow the on-screen instructions to install your chosen firmware type
 +
 
 +
== Step 3. Install GalliumOS ==
 +
 
 +
You are now ready to [[Installing|install GalliumOS]] from ISO or via chrx.
 +
 
 +
== Other options from the Developer Mode screen ==
 +
 
 +
The Developer Mode boot screen offers a few additional options. The most important one is Ctrl+L for Legacy Mode booting, which you will use to boot GalliumOS after installing (depending on your firmware choice). Here is the full list:
 +
 
 +
* [Ctrl+D] to boot ChromeOS in '''D'''eveloper Mode, or
 +
* [Ctrl+L] to boot '''L'''egacy Mode (usually used for Linux, after installing)
 +
* [Ctrl+U] to boot a ChromeOS (or ChromiumOS) image from USB (you'll never need to use this)
 +
* [TAB] for some boot configuration information
 +
 
 +
<!-- OLDSTUFF
 +
 
 +
If you have already used Linux on your Chromebook in the past (Crouton does NOT count), you probably don't need to do this. This article will cover the very minimal requirements for making it work on each generation of Chromebook. This means we won't flash any firmware if we don't need to. If you want instructions for flashing firmware, see [[Firmware]]. Please note that this process can be very dangerous, so please carefully read everything and do not skip any steps. We are not responsible if you brick your Chromebook, even though we think it sucks that you did. Despite the fact that the Chromebook Pixel and 2015 Chromebook Pixel are Sandy Bridge and Broadwell respectively, you should use the Haswell process for both of them. We know this doesn't make any sense, but just trust us.
  
  
 
== Sandy Bridge / Ivy Bridge ==
 
== Sandy Bridge / Ivy Bridge ==
  
With the exception of the original Chromebook Pixel, on Sandy Bridge Chromebooks, you will have to flash your firmware. Luckily, John Lewis' script makes it a very straight forward process. Unfortuantely, you'll have to open up your Chromebook. Also note that after completing this porcess, you will no longer be able to run Chrome OS on your Chromebook, so no dualbooting for this one I'm afraid.
+
With the exception of the original Chromebook Pixel, on Sandy Bridge Chromebooks, you will have to flash your firmware. See [[Firmware]].
  
 
First, you need to put the device in developer mode. You'll know if you're in developer mode because you will see the "scary white screen" before you are able to boot the computer. If you are not in developer mode, you can get there by shutting down your computer, holding Esc and Refresh (F3), then powering on the computer. You will see a screen that says "Chrome OS is missing or damaged.". Don't panic! This is normal. You need to press Ctrl-D. Your computer will reboot a few times and you will see a few prompts. Please note that this will wipe your data (similar to a powerwash) so make sure you have backed everything up first. Now that you're in developer mode, proceed to the next step.
 
First, you need to put the device in developer mode. You'll know if you're in developer mode because you will see the "scary white screen" before you are able to boot the computer. If you are not in developer mode, you can get there by shutting down your computer, holding Esc and Refresh (F3), then powering on the computer. You will see a screen that says "Chrome OS is missing or damaged.". Don't panic! This is normal. You need to press Ctrl-D. Your computer will reboot a few times and you will see a few prompts. Please note that this will wipe your data (similar to a powerwash) so make sure you have backed everything up first. Now that you're in developer mode, proceed to the next step.
Line 23: Line 93:
  
 
and follow the onscreen prompts carefully. Hopefully, if everything went well, you should be good to go. Reboot your computer, plug in your GalliumOS USB, and start installing! Note that after completing this process your computer will be unable to boot. You must insert a USB drive with an operating system on it (hopefully GalliumOS :P) and install it to the hard drive.
 
and follow the onscreen prompts carefully. Hopefully, if everything went well, you should be good to go. Reboot your computer, plug in your GalliumOS USB, and start installing! Note that after completing this process your computer will be unable to boot. You must insert a USB drive with an operating system on it (hopefully GalliumOS :P) and install it to the hard drive.
 
  
 
== Haswell ==
 
== Haswell ==
  
Haswell Chromebooks are mostly incredibly easy to work with. There is no additional firmware needed. You just need to enable developer mode, enable a couple boot flags, and you're good to go!
+
Haswell Chromebooks/boxes are mostly incredibly easy to work with. For many models, no additional firmware needed. You just need to enable developer mode, enable a the legacy boot flag, and you're good to go!
  
 
First, you need to put the device in developer mode. You'll know if you're in developer mode because you will see the "scary white screen" before you are able to boot the computer. If you are not in developer mode, you can get there by shutting down your computer, holding Esc and Refresh (F3), then powering on the computer. You will see a screen that says "Chrome OS is missing or damaged.". Don't panic! This is normal. You need to press Ctrl-D. Your computer will reboot a few times and you will see a few prompts. Please note that this will wipe your data (similar to a powerwash) so make sure you have backed everything up first. Now that you're in developer mode, proceed to the next step.
 
First, you need to put the device in developer mode. You'll know if you're in developer mode because you will see the "scary white screen" before you are able to boot the computer. If you are not in developer mode, you can get there by shutting down your computer, holding Esc and Refresh (F3), then powering on the computer. You will see a screen that says "Chrome OS is missing or damaged.". Don't panic! This is normal. You need to press Ctrl-D. Your computer will reboot a few times and you will see a few prompts. Please note that this will wipe your data (similar to a powerwash) so make sure you have backed everything up first. Now that you're in developer mode, proceed to the next step.
  
Now your Chromebook is rooted. Now you need to enable a couple boot flags, and you're good to go. Log into your Chromebook and connect it to the internet. Press Ctrl+Alt+T to open a crosh session. Now, you can open bash by simply typing
+
Now you need to enable the legacy boot flag. Log into your Chromebook and press Ctrl+Alt+T to open a crosh session. Open bash by simply typing
  
 
<code>shell</code>
 
<code>shell</code>
Line 39: Line 108:
 
<code>chronos@localhost / $</code>
 
<code>chronos@localhost / $</code>
  
Now, you just need to enable a couple boot flags. You can skip this step if you plan on using chrx to dualboot GalliumOS with ChromeOS.
+
Then set the legacy boot flag (you can skip this step if using chrx to dual-boot GalliumOS with ChromeOS):
 
 
<code>sudo crossystem dev_boot_usb=1 dev_boot_legacy=1</code>
 
  
If everything went smoothly, you should be ready to go. Just reboot your computer, pop in your GalliumOS USB, press Ctrl+L at the scary white screen, and install away! If you want to remove the scary white screen, or boot to Linux by default, see [[Firmware Flashing]].
+
<code>sudo crossystem dev_boot_legacy=1</code>
  
 +
If everything went smoothly, you should be ready to go. Just reboot your computer, pop in your GalliumOS USB, press Ctrl+L at the scary white screen, and install away! If you want to remove the scary white screen and/or boot to GalliumOS by default, see flashing [[Firmware]].
  
 
== Broadwell ==
 
== Broadwell ==
Line 68: Line 136:
 
<code>sudo crossystem dev_boot_usb=1 dev_boot_legacy=1</code>
 
<code>sudo crossystem dev_boot_usb=1 dev_boot_legacy=1</code>
  
If everything went smoothly, you should be ready to go. Just reboot your computer, pop in your GalliumOS USB, press Ctrl+L at the scary white screen, and install away! Unfortunately, there is no way to remove the scary white screen on Broadwell (yet!), but you can set it up to boot Linux by default. For more information, see [[Firmware Flashing]]
+
If everything went smoothly, you should be ready to go. Just reboot your computer, pop in your GalliumOS USB, press Ctrl+L at the scary white screen, and install away! Unfortunately, there is no way to remove the scary white screen on Broadwell (yet!), but you can set it up to boot Linux by default. For more information, see [[Firmware]]
  
  
 
== Bay Trail ==
 
== Bay Trail ==
  
On Bay Trail Chromebooks, you will have to flash your firmware. Luckily, John Lewis' script makes it a very straight forward process. Unfortuantely, you'll have to open up your Chromebook. Also note that after completing this porcess, you will no longer be able to run Chrome OS on your Chromebook, so no dualbooting for this one I'm afraid.
+
On Bay Trail Chromebooks, you will have to flash your firmware; see [[Firmware]].
  
 
First, you need to put the device in developer mode. You'll know if you're in developer mode because you will see the "scary white screen" before you are able to boot the computer. If you are not in developer mode, you can get there by shutting down your computer, holding Esc and Refresh (F3), then powering on the computer. You will see a screen that says "Chrome OS is missing or damaged.". Don't panic! This is normal. You need to press Ctrl-D. Your computer will reboot a few times and you will see a few prompts. Please note that this will wipe your data (similar to a powerwash) so make sure you have backed everything up first. Now that you're in developer mode, proceed to the next step.
 
First, you need to put the device in developer mode. You'll know if you're in developer mode because you will see the "scary white screen" before you are able to boot the computer. If you are not in developer mode, you can get there by shutting down your computer, holding Esc and Refresh (F3), then powering on the computer. You will see a screen that says "Chrome OS is missing or damaged.". Don't panic! This is normal. You need to press Ctrl-D. Your computer will reboot a few times and you will see a few prompts. Please note that this will wipe your data (similar to a powerwash) so make sure you have backed everything up first. Now that you're in developer mode, proceed to the next step.
  
Now your Chromebook is rooted. Now, we need to flash the firmware. Unfortunately, this means you will need to open your Chromebook. You need to open your Chromebook and either bridge the jumper with a piece of tin foil, or remove the screw that governs hardware write protection. This process varies from model to model, so you should look up how to do it on the internet. We do hope to have a guide for all models here at some point, so you don't have to go searching, but it's not ready yet, so you'll have to do some googling. Also note that this process is very complicated on the Toshiba Chromebook 2 (2014 version) because of Toshiba's poor design.
+
Now your Chromebook is rooted. Now, we need to flash the firmware. There are several options, which are detailed on the firmware page linked above. If you wish to dual boot your device (with ChromeOS) or don't want to open up the Chromebook, you will need to flash the RW_LEGACY firmware type.  
  
Once you've disabled the write protection, we can really get started. First, log into your Chromebook and make sure it's connected to the internet. Next, press Ctrl+Alt+T to open a crosh session. Now, you can open bash by simply typing
+
=== BOOT_STUB / Full ROM ===
 +
Flashing either of these firmware types requires you to open your Chromebook remove the screw that enables the firmware write protection. This process varies from model to model, so you should look up how to do it on the internet. We do hope to have a guide for all models here at some point, so you don't have to go searching, but it's not ready yet, so you'll have to do some googling. Also note that this process is very complicated on the Toshiba Chromebook 2 (2014 version) because of Toshiba's poor design.  Once you've disabled the write protection we can really get started.  
 +
 
 +
=== RW_LEGACY ===
 +
To flash RW_LEGACY, the firmware write protection does not need to be disabled, but but doing so will allow you to change the default boot target (ChromeOS or GalliumOS) and the boot timeout (1s or 30s).
 +
 
 +
 
 +
 
 +
Regardless of firmware type to be flashed, the process is the same.  First, log into your Chromebook and make sure it's connected to the internet. Next, press Ctrl+Alt+T to open a crosh session. Now, you can open bash by simply typing
  
 
<code>shell</code>
 
<code>shell</code>
Line 87: Line 163:
 
<code>chronos@localhost / $</code>
 
<code>chronos@localhost / $</code>
  
Now, you just need to download and run John Lewis' script. Again, make very sure you have a stable internet connection before doing this. When you're positive you're ready, run
+
Now, you just need to download and the firmware flashing script; links are on the firmware page. Again, make very sure you have a stable internet connection before doing this. When you're positive you're ready, run the appropriate script and follow the onscreen prompts carefully. Hopefully, if everything went well, you should be good to go. Reboot your computer, plug in your GalliumOS USB, and start installing! Note that after completing this process your computer will be unable to boot. You must insert a USB drive with an operating system on it (hopefully GalliumOS :P) and install it to the hard drive.
  
<code>cd; rm -f flash_chromebook_rom.sh; curl -L -O <nowiki>https://johnlewis.ie/flash_chromebook_rom.sh</nowiki>; sudo -E bash flash_chromebook_rom.sh</code>
+
== Braswell ==
  
and follow the onscreen prompts carefully. Hopefully, if everything went well, you should be good to go. Reboot your computer, plug in your GalliumOS USB, and start installing! Note that after completing this process your computer will be unable to boot. You must insert a USB drive with an operating system on it (hopefully GalliumOS :P) and install it to the hard drive.
+
Fully-functional firmware options are not available yet, so running GalliumOS on Braswell is not yet possible / unsupported.
 
 
 
 
== Braswell ==
 
  
We know nothing about Braswell yet. We'll let you know as soon as we have information about running GalliumOS on Braswell.
+
EO_OLDSTUFF
 +
-->

Revision as of 03:11, 4 February 2017

To install any new operating system onto your ChromeOS device, you must first enable Developer Mode. Many models also require updating firmware, depending on the install type.

To determine what preparation steps your device requires, you will need to know your device's Hardware ID. This is available from inside ChromeOS by navigating to chrome://system, where it's called hardware_class.

Next, check our Hardware Compatibility page to determine your device's CPU family. For example, the Acer C720's Hardware ID is PEPPY, and the CPU Family is Haswell.

Armed with this information, we can begin:

Step 1: Enable Developer Mode

WARNING: Enabling Developer Mode will erase all user data in ChromeOS. If you have locally-stored data, back it up first. Cloud data will not be lost.

  1. With device shut down, press Esc+F3(refresh)+Power to boot into Recovery Mode
  2. You will see the Recovery Mode boot screen, informing you that "ChromeOS is damaged or missing" (although it is not)
  3. Press [Ctrl+D] to enable Developer Mode, then follow confirmation steps (usually just pressing enter)
  4. Your machine will reboot to a white screen which says "OS verification is OFF". This is Developer Mode.
  5. Enable Legacy Mode booting (you can skip this step if updating firmware, since it will be done automatically for you)
    1. Press [Ctrl+D] to boot ChromeOS in Developer Mode
    2. Configure WiFi if necessary, and log in to Chrome (Guest account is fine)
    3. Press [Ctrl+Alt+T] to get a ChromeOS terminal ("crosh") window
    4. At the prompt, enter shell
    5. At the chronos@localhost / $ prompt, run the following:
      • sudo crossystem dev_boot_legacy=1

Step 2: Flash Firmware (if required or desired)

Here's where you'll need to know your Hardware ID and CPU Family.

  • Sandy Bridge models require custom firmware (exception: LINK)
  • Bay Trail and Braswell models require custom firmware
  • Haswell, Broadwell, and Skylake models can benefit from custom firmware; some models require it depending on install type. See: Hardware_Compatibility

Custom firmware (for many models) is available in multiple types and from multiple sources. See Firmware for more discussion.

Step 2a: Disable write-protection (if required)

Some types of firmware update (BOOT_STUB and Full ROM) require disabling firmware write-protection on your device. Be sure to read the Firmware page first! Write protection (WP) on ChromeOS devices is usually controlled by a screw on the motherboard, but some models also have conductive stickers, and a few older models have a jumper. The location and appearance of the WP screw/sticker/jumper vary between models, but in all cases you will need to open your device.

A web search for "<model or hardware id> chromebook disable write-protect" will often return detailed instructions, with photos, for your model. If not, feel free to ask for help in /r/GalliumOS or #galliumos.

Step 2b: Install/Update Firmware

You can install/update your firmware from the ChromeOS terminal, or from a running Linux system. These instructions describe the process from the ChromeOS terminal.

  1. Boot into ChromeOS by pressing [Ctrl+D] at the "OS verification is OFF" Developer Mode boot screen
  2. Configure WiFi if necessary, and log in to Chrome (Guest account is fine)
  3. Press [Ctrl+Alt+T] to get a ChromeOS terminal ("crosh") window
  4. At the prompt, enter shell
  5. Decide which firmware you want to install. See Firmware.
  6. At the chronos@localhost / $ prompt, run the command to flash your firmware. These commands are current as of this writing, but be sure to check the developer's site for any changes.
  7. Run MrChromebox's Firmware Utility Script (developer's site)
  8. Then follow the on-screen instructions to install your chosen firmware type

Step 3. Install GalliumOS

You are now ready to install GalliumOS from ISO or via chrx.

Other options from the Developer Mode screen

The Developer Mode boot screen offers a few additional options. The most important one is Ctrl+L for Legacy Mode booting, which you will use to boot GalliumOS after installing (depending on your firmware choice). Here is the full list:

  • [Ctrl+D] to boot ChromeOS in Developer Mode, or
  • [Ctrl+L] to boot Legacy Mode (usually used for Linux, after installing)
  • [Ctrl+U] to boot a ChromeOS (or ChromiumOS) image from USB (you'll never need to use this)
  • [TAB] for some boot configuration information