Fascinating Captain

Tech Guides and Buying Advice


Dual boot Chrome OS and Linux

Get the best of both worlds with Chrome OS and Linux

In my original guide many of you have asked how to dual boot Chrome OS and Linux on your Chromebooks. I’ve come up with this how to along with the video guide to make the whole process easier to understand and follow.

John has provided some great resources on his site along with the modified BIOS needed to make installing Linux on a Chromebook possible. For dual booting on a Chromebook you should use the RW_LEGACY BIOS mod. You may find my post about the difference between BOOT_STUB and RW_LEGACY useful as well.

With only a 16GB internal drive on the Chromebook, it’s not worth partitioning it for the Linux install and so I’m using a USB 3.0 drive instead. This means I’ll leave the Chrome OS install on the internal drive and install Linux on a always plugged in USB 3.0 thumb drive.

USB 3.0 drives provide fast read/write speeds and a compact one like the SanDisk 128GB Ultra Fit is the one I chose. It’s a good solution because it doesn’t stick out of the side of the Chromebook too much and costs only around $30.

Lastly, the great thing about this method (RW_LEGACY) is that you DON’T have to open your Chromebook up meaning you aren’t invalidating your warranty and you can’t brick your Chromebook.

It’s a good idea to have your mains power plugged in to avoid any low battery issues.

What you’ll need:


Step 1. Enable Developer mode

Developer mode will wipe your Chromebook back to factory settings so make sure you back up any data not on your Google drive.

  • With your Chromebook turned off hold down the ESC and Refresh While keeping them held down, press the power button once.
  • Press Ctrl + D to bypass this screen.

yellow exclamation screen

  • Press Enter at the next screen.
  • On the next screen press Ctrl + D to bypass this message.

red exclamation screen

  • You will see a timer counting down in the top right hand corner of the screen. The Chromebook will reboot and you’ll see the screen with the red exclamation mark.
  • Developer mode is now enabled, power off the Chromebook.

Step 2. Modify the Chromebooks BIOS

By enabling developer mode, your Chromebook will always display the screen with the red exclamation mark on startup. Let’s now modify the BIOS to allow us to install Linux.

  • Turn the Chromebook on and press Ctrl + D to bypass the screen with the red exclamation mark.
  • Your Chromebook is reset to factory settings so you will need to go through the Chrome OS setup again.
  • Once complete, open a new Chrome tab and go to John’s website, at the bottom of the post (before the comments section) copy the commands.
  • Press Ctrl + Alt + T to bring up a terminal window tab.
  • Type shell and press Enter.
  • Paste the commands into the terminal and press Enter.
  • Choose the option to Modify my Chromebook’s RW_LEGACY slot and follow the on-screen instructions.

Step 3. Enable USB boot

Pressing Ctrl + D at the screen with the red exclamation mark on startup will take you to your Chrome OS install but pressing Ctrl + L will take you to the BIOS screen to boot from your USB drive. Let’s turn on the Ctrl + L functionality next:

  • Press Ctrl + D at the initial startup screen to load Chrome OS.
  • Press Ctrl + Alt + F2 at the Chrome OS login screen.
  • Login using the password chronos
  • At the terminal prompt, type sudo crossystem dev_boot_usb=1 dev_boot_legacy=1
  • Power off the Chromebook by typing in sudo poweroff
  • Now on startup, if you press Ctrl + L, you will get the BIOS screen instead of Chrome OS.

Step 4. Install Linux

At this stage most of the work is done and all that’s left is to install Linux:

  • Plug in your USB 3.0 drive into the USB 3.0 port of your Chromebook.
  • Plug in your live Linux USB into the other USB port.
  • Power on the Chromebook and press Ctrl + L to get to the BIOS screen.
  • Press ESC when prompted and you will see 3 drives: the USB 3.0 drive, the live Linux USB drive (I am using Ubuntu) and the eMMC (the Chromebooks internal drive). Choose the live Linux USB drive.

SeaBIOS boot options

  • Choose the option Try Ubuntu without installing. When Linux loads make sure you can connect to the internet (I am using my trusty USB to Ethernet hub combo for a wired connection).
  • Click on the Install Ubuntu 16.04 LTS icon and follow the on screen prompts until you get to Installation type.
  • We want to leave the Chromebook’s internal drive untouched so choose the option to do something else so that we can manually setup the partitions for Ubuntu.
  • Ignore all the mmc partitions and look for your USB drive, if you’re not sure, look at the size of the drive.
  • Setup a 4GB (4000 MB) swap partition and set the rest of the space as the root partition.

ubuntu partitions

  • DON’T FORGET to change the boot disk to your USB drive as well.
  • Check your partitions are correct and continue the install. 
  • The rest of the install is a standard install so just follow the on screen prompts.
  • Once finished, reboot, remove the live Linux USB and press Ctrl + L
  • You now have Linux installed. Run the software updates to make sure you have the latest firmware, drivers and software.

Step 5. Fix any problems

For most Chromebooks things will work just fine but there may be some tweaks you need to perform.

To make this easier see my post on automating these fixes so that you can start using your shiny new Linux Chromebook as quickly as possible.


  1. Christopher Carr

    Is there an issue with the live Ubuntu session and Swanky’s built-in WiFi?

    • Captain

      I’ve noticed whether in the live session or full install, the WiFi doesn’t accept the password. In this case, go to edit connections and reenter the WiFi password.
      Also check your date and time is correct.

      • Christopher Carr

        Fortunately, I didn’t experience any unusual issues with WiFi — no ethernet-USB adapter required.

        Got elementary OS 0.4 “Loki” beta dual-booting using the posted method, off my SanDisk UltraFit. Loki is buggy as one would expect, but I suspect Pantheon performs a little better than Unity on Swanky’s hardware.

        • Captain

          Good work, just to clarify for anyone reading, I only use the adapter for a faster internet connection.
          Hhmmm, I read Loki was in beta, I’ll probably do a review once it’s in final release.

  2. Daniel

    I have the newer chromebook 2 and it’s giving my can’t load gfx when i tried to boot please help.

    • Captain

      Hi Daniel,
      If you mean the ‘Graphics initialization failed Error setting up gfxboot’ this is a known problem. As I commented previously:
      Try another USB drive or recreate the live install by using dd.
      sudo dd if=/path_to_ubuntu_.iso of=/dev/sdX
      where you need to change the iso path and sdX to you USB dive (use lsblk to check which one it is).

  3. Masa Louis

    No sound yet did the fix in step 5 🙁 I have the Swanky Toshiba CB35-B3340. Thanks for the help thus far.

    • Captain

      See my earlier comment to Simon, you probably just need to click on the speaker in the settings.

  4. E.J

    Hey Captain,

    My friend has a hp chrome book 14 with 2gb of Ram (it’s the one that is aqua blue I think). Elementary OS Freya was too buggy for her chromebook, whether it was the 32 or 64bit. Right now I’m thinking about installing Ubuntu Mate or Linux mint (Cinnamon or Mate?) . She’s new to Linux. Which one should I choose in your opinion? Are there other options you can recommend if necessary?

    Thank you!

    • Captain

      Hi E.J,
      With 2GB RAM it’s best to go with a lightweight distro. I’m actually working on a new video where I’ll be comparing 5 lightweight distros so keep an eye out! So far I’m really impressed with lubuntu for ease of use and performance. Cinnamon looks nice but might be a bit laggy on the HP.

  5. Masa Louis

    Hi Captain,
    I am having troubles with the wifi, completed all the steps and everything was fine until a few days ago. First I noticed that the wifi doesn’t connect when the wakes up after sleeping (forcing me to restart all the time.) Now the wifi doesn’t work at all. I have the 2015 swanky. Let me know if you could shed any light on this issue.

    • Captain

      Hi Masa,
      Check the date and time are correct on your Chromebook.
      For Ubuntu 16.04 (and variants) in network settings, check the password is filled in.

      • Masa Louis

        Hi Captain,

        Thanks for the help. Saving the password in the settings did the trick. Thanks for the Chromebook Ubuntu experience!

  6. Fred

    Hi Captain,

    Thanks for the great tutorial! Just got my toshiba chromebook (broadwell) setup with Linux with the RW_LEGACY firmware. I have no use for Chrome OS and replaced the eMMC already. Is it possible to bypass the white screen without pressing Ctrl+L?

    • Captain

      Hi Fred,
      Good job! John doesn’t offer BOOT_STUB modifications for newish Chromebooks (which is what you need to remove the white screen) but Mr Chromebox https://mrchromebox.tech/ does.

      You will need to disable write protect and so there is the possibility of bricking your device, so make sure, you’re careful…

  7. Roger Peniston-Bird

    I think I successfully removed the write protect pad,and did not replace the screw. But how do I check whether I was successful or not, before proceeding further?

    Roger in Vienna

    • Captain

      Hi Roger,
      If you removed the sticker and screw, your BIOS will be writable. Try running John’s script and it should work.

  8. Masa Louis

    Hey Captain,

    I love my new OS, but I notice on my Swanky that the application tab window (usually what you get when you press alt+tab) seems to pop up for no reason when I am just using the mouse pad. Do you now of this glitch?


    • Captain

      Hi Masa,
      It’s probably a setting somewhere which allows you to 2 finger scroll through your apps but without knowing your setup, it’s difficult to say.

      • Masa Louis

        Hey Captain,

        I played around further, and it seems like for some reason my Swanky’s settings are 3 finger tap is the same as alt+tab, and four fingers tap is the dashboard. Never really messed with the settings, and just installed only a few basic apps. Thoughts?


  9. Holland McPeake

    Hi Captain,
    Trouble in Dual Boot Land. I get down to “Select boot device” where I select my usb drive. I immediately get “graphics initialization failed, Error setting up gfx boot.” I tried rewriting the USB stick, redown loading ubumtu, using a second usb stick, and writing in dd image mode. All resulting in the above error.

    Help is appreciated !!

    • Captain

      Hi Holland,

      The gfx boot problem is listed as a unresolved bug and the problem has been around for ages! I normally recommend using John’s script to do the BIOS mod but Matt (MrChromebox) has been active in this area as well and you’ll see his many contributions on John’s Google+ community.

      Anyway the point of all this is that Matt has recently put up his new site which also includes BIOS mods for Chromebooks and I believe using his BIOS will eliminate the gfx boot problem.

      Go to https://mrchromebox.tech and choose the Firmware Utility Script link. The script runs in the same way as John’s script and for dual booting make sure you choose the RW_LEGACY option. After that the other steps from my post will be the same.

      Like John, Matt accepts donations to show appreciation for their work so if you’re able to consider donating.

      Anyway, let me know how you get on…

      • Holland McPeake

        Thank you very much for the prompt answer. I think this is getting too much for my non Linux brain and am afraid I’ll mess things up where I can’t get back. I know that when I power on and don’t do the Control L after a minute or so it boots into Chrome. Can you tell me how to get back to plain old Chrome OS when I power up?

  10. Masa Louis

    Hey Captain thanks for the advice earlier.

    I know you already did a lot, but have you had any thoughts on installing Mint on chromebooks with 4gb ram like the Swanky?


    • Captain

      I’m working on another video at the moment but will be making a Mint install video, it’s a great distribution and I know people really like it.

  11. Bruno Beloff

    Thanks for this. It works great! I now have a dual-boot Toshiba Chromebook 2 – just what I wanted 🙂 I use an SD card for the Ubuntu install.

    One bugbear – on startup, when I CTRL-L to Sea BIOS and Esc to the menu, I get the following drives:

    1. MMC drive (I’m assuming this is the Chromebook’s SSD)
    2. SD card (my Ubuntu)

    How do I change the order, or remove the MMC? The MMC is not relevant at this point, and in any case Sea BIOS cannot boot to ChromeOS – so the option is pointless. Worse, if you leave Sea BIOS to boot unattended, it will attempt to boo to the MMC, and the system will hang.

    I know Sea BIOS is not your product, but you might have some thoughts?

    • Captain

      Hi Bruno,

      That’s great that you’re dual booting now!

      The mmc is the internal drive and unfortunately there’s no way I know of to change the boot order if you’re using a SD drive. USB drives on the other hand do boot first.

  12. Daniel Bray

    Thank you very much for your guide! I was not able to find a workaround for the ‘gfx’ error I received when installing Ubuntu 16, so I went with Ubuntu 14 instead. I tried the fix from mrchromebox.tech as well and it did not work for me. I purchased the USB Flash Drive you recommended and everything installed perfectly.

    My question is regarding the partitioning of the USB Flash Drive. You write in step 4: “Setup a 4GB (4000 MB) swap partition and set the rest of the space as the root partition.” I found this Q/A on askubuntu to be helpful for steps in doing this: http://askubuntu.com/questions/343268/how-to-use-manual-partitioning-during-installation. He recommends a ‘swap’ partition, a ‘/’ (root) partition, and a ‘/home’ partition. Do I need the third partition (‘/home’), or should I put all the remaining space as my ‘/ (root fs)’ partition?

    • Captain

      Hi Daniel,

      Cool you got everything working.

      As far as the partitioning, when you set the root partition, Linux creates the home folder on the same partition for you. Unless you have a particular requirement for a separate home partition let Linux do it for you.

      That way you get to use the maximum amount of space available rather than setting an arbitrary amount.

      BTW, I’ll be making a video of installing Linux Mint with a separate home drive soon, so stay tuned!

      • Daniel Bray

        Is there a way to change my partitions if I have already set it up with 4gb swap, 20gb root and 100gb home? Or do I need to wipe everything and do a clean install?

        I’m looking forward to the video about Mint.

  13. Ron

    Hi Captain,

    If I want to install Ubuntu on the same (upgraded) SSD as ChromeOS, do I have to do anything fancy to get it to boot to Ubunutu on Startup? Your guide just gets it to boot off of the usb drive to go straight to Ubuntu.

    • Captain

      Hi Ron,

      John describes how to do this in his post. It’s not something I’ve tried and there doesn’t seem to be that much interest in doing this since most people who have upagraded their SSD’s really only want to run Linux. If more people request this, I’ll make a video 🙂

      • Ron

        Is there a way to install just Ubuntu using this method without disabling Write Protect? Like would telling Ubuntu to wipe the Chrome OS during install work?

        • Captain

          Yes sure. Instead of using the ‘something else’ option for partitioning, use the default option and choose your SSD for the install. Once installed, Chrome OS will be wiped and using CTRL + L will allow you to boot Ubuntu.

      • Aries Silva

        Captain, your blog has been invaluable and I was able to get my toshiba chromebook dual booting in no time! I love the extra functionality Linux brings. I would LOVE to be able to ditch the USB drive though and just be able to dual boot off my SSD after I upgrade it of course (looking at buying the 256GB one).

        Looking at John’s post, is difficult to ascertain which (if any) of the steps need to be modified for this setup. Can I bribe you with some virtual candy to do the video anyways? 🙂 I know you REALLY want to get your chromebook setup this way too (and free up that precious USB3 port) as well 🙂

        • Captain

          Hi Aries,
          Glad to help. Unfortunately, my hard drive is not replaceable on my Toshiba CB2 so I’m stuck with only 16GB. The guide to dual boot off the internal drive is one I thought about doing but there didn’t seem to be any demand for it. Since you asked so nicely, I’ll see what I can do although I’ve currently got a list of requests and ideas that I want to post about (I did ask!), so please be patient. Virtual candy huh? Bribery and corruption, I never thought I’d see the day…

  14. Caleb

    Hey cap thanks for the tutorial very informative I must say. I was wondering if i should follow this tutorial if I want to install Ubuntu on my MMc and not USB drive. I dont want to dual boot, just use plain Ubuntu. I am using Toshiba Chromebook 2 Swanky.

    • Captain

      Hi Caleb,

      Yeah sure you can do that, see my reply to Ron in these comments.

  15. Michael Webber

    I’ve had serious performance issues with the SanDisk USB 3.0 Fit – it can’t sustain larger file transfers without overheating and throttling down (the first version even corrupted data). The Samsung USB 3.0 MUF-128BB/AM also called “Fit” on the Amazon webpage (but only for search results I suspect). That one can handle 40gb of mass file transfers at high speeds.

    • Captain

      Hi Michael,

      Interesting, I haven’t had any problems with my ultrafit but I do agree it can get hot. Having a look at Amazon reviews there are 2,055 for the Sandisk Ultrafit I used in this post and only 656 for the Samsung one you are using. For both, reviewers have said that they get hot, so based on the numbers and my own experience I would still recommend the Sandisk Ultrafit.

      I really appreciate you taking the time to let me know your experience and I’m sure it will help others as well (in fact the Ultrafit was recommended to me by another person in another post comment!).

      For others reading this, here’s the links to the drives:

      Sandisk UltraFit from this post
      Samsung 128GB USB 3.0 Flash Drive Fit

  16. Ron

    Just got everything working after some struggles, thought I would post some issues/solutions I ran into here. First, it seems that ChromeOS can’t recover off a SanDisk brand flashdrive, so use a different brand if you have to recover (I did to install a new SSD).

    I was getting the “gfx” error with both John’s and Matt’s BIOS updates, with multiple flashdrives, with multiple Ubuntu versions, with/without dd writes. I probably ended up making over a dozen Live Linux USB versions.

    What ended up working was making a Live USB from a non-dd Ubuntu 14.04 32 bit iso. This still gave me the gfx error, but after that error I pressed Tab to get more options, then did “live” to get onto a live desktop of Ubuntu. From there I fully installed Ubuntu 14, and after that I upgraded to 16.

    Hopefully this post helps someone down the line, it was very disheartening to get the gfx error so many times but it did end up working.

    • Captain

      Sometimes the straightforward stuff is harder than the hard stuff. Thanks for posting this workaround for the gfx error. Out of interest, what model of Chromebook are you using?

      • Ron

        Toshiba Chromebook 2015 (with the i3)

        • Captain

          Hhhm, I was expecting a different model, it’s probably the i3 integrated graphics. Just for others reading this, pressing help and then Enter will boot into live Ubuntu on older versions of Ubuntu.

          It’s a known bug but looks like the Ubuntu team have decided to give it a low priority.

          Using Ron’s workaround of installing an older version and upgrading seems to be the way to go.

    • Anne

      Hi there:
      I have the same gfx errors as some of the other folks here. i’ve tried Matt’s BIOS mods but am having the same issue. I have a 16 GB SanDisk UltraFit USB 3.0 Flash Drive (vs 128 GB). Is there a minimum requirement on the size of the Flash Drive for this to all work ? If so, is it likely that the size of my Flash Drive is the root of the gfx errors?

      • Captain

        Hi Anne,

        The gfx is related to the graphics and not the amount of disk space. You can get around this by using chrx to install Linux. See chrx where you’ll find detailed instructions. Pay close attention to the -t TARGETDISK option as you’ll want to point the installation to your USB drive.

        On the other hand the gfx error only affects debian based distro as far as I’m aware so you could try Fedora or OpenSuse.

  17. Brad Woosley

    Hey this is a great tutorial, I’m running 16.04 on my Toshiba Chromebook 2 via USB 3 and an external SSD drive (it’s what I had on hand) and it works pretty damn well. I wouldn’t say it was Snappy but it doesn’t lag really. I installed Minecraft to play with my daughter and if you dial down the graphics it runs pretty well even in multiplayer. She plays on my Macbook so it doesn’t effect her and I don’t really care about the graphics all that much. Other than that it’s a little clunky using an external drive vs. a USB stick no issues here. I am thinking about picking up a stick now that I know it works, but 128 is a little slim for me so any recommendations on a 256GB or larger

    • Captain

      Hi Brad,

      Glad to hear you’re getting so much mileage from your Chromebook!

      There are larger size thumb drives out there but prices go a bit crazy over 128GB and insane for 512GB drives. If I were in the market for a 256GB thumb drive, I would be looking for a compact size, USB 3.0 and reasonable price. This would be my shortlist:

      Silicon Power 256GB Swivel (great read/write speeds)
      PNY Turbo 256GB (over 8000 reviews)
      256GB PNY Pro Elite (more expensive but has the best read/write speeds)

      • Brad

        Thanks sir, I did decide to just get the 128 Sure fit for now and I noticed a marked improvement immediately. I also found a 4GB Toshiba model for $100 and upgraded to that one, flashed the BIOS stuck my USB in and was up and running no problems, Bluetooth even works to stream to my speakers at the pool, the one thing I’ve noticed is that you have to go back into the sound settings and reselect the internal speakers or you won’t have sound after disconnecting.

        The only thing that doesn’t work correctly is my external DVD player it’s a Toshiba and I thought it would work out of the box, it runs in VLC but I haven’t figured out how to select buttons in it yet, the built in video player doesn’t work at all with a DVD, is there another program I can try or am I just too much of a noob to know how to work it?

        • Captain

          $100 for a Chromebook is a great deal!

          For the DVD, I think it’s probably the codecs or the way the DVD is encrypted that restricts playback. Try running this command in a terminal window:
          sudo apt-get install libdvd-pkg
          Also make sure you have all codecs by running:
          sudo apt-get install ubuntu-restricted-extras

          In VLC player go to ‘open DVD’ in the file menu.

          • Brad Woosley

            Well I’ve tried everything to get the DVD to work correctly but some DVD’s just won’t play, I’ve installed all the CSS libs as well. It’s not that big of a deal, I don’t really want to carry around the DVD player it was just an exercise to see if I could get it to work. I’m going to rip my DVD’s with Handbrake on my Macbook and then put them on my SD card and stick it in my Ubuntu so I can just watch from the SD card.

            I have been messing around with just how much I can get out of my 4GB Toshiba and frankly I’m surprised. For causal gamers who don’t need massive graphics this machine can do a lot. Here’s what I’ve managed to get running.

            Minecraft – Runs smoothly once you tone down the graphics a little, works well even in a hosted multiplayer, I play with my 8 year old daughter all the time and she likes to use my little Ubuntu instead of the Macbook just because of the lighter foot print. It does have a few hiccups but re markedly few considering the fact that not only are you running the game but hosting it on the local network.

            Steam – I have steam running, I didn’t think it was possible on this little machine but it runs fine and a couple of the games I have for the Macbook downloaded and installed no problems at all.

            Darkest Dungeon (steam) – I thought there was no chance this game would run on the Ubuntu Chromebook, it’s not particulary graphics intensive, I believe it’s all static handpainted but still not only does it run, it runs as well on my Ubuntu as my Macbook, no it runs but you have to be patient or it has work arounds it just flat out runs. The only hiccups it has is the video sequences occasionally hiccup but that’s not actually gameplay, the gameplay is smooth as butter.

            Xonotic – This is an FPS based on the Doom/Quake/Unreal engine I believe, did not think that this would run at all but it runs fast with no frame rate lags in full screen. I haven’t tried a local game or on the 2GB model (I have one just haven’t tried it) but in the online mode it works seamlessly. Very surprising.

            Battery life is nowhere as good as Chromebook but I expected that, casual browsing email etc you get about 4 hours vs. 5-6 on Chrome and when you are playing Minecraft about 3 hours, but that is still good considering you are running a full OS on a tiny little machine like this.

            Overall I’m shocked at what you can do with a machine that cost me $100 and another $28 for the USB stick.

            I’ve messed around with Linux quite a bit in the past and it was always so problematic to get anything to work correctly that it just wasn’t worth it. This release is super stable, fairly easy to get things working and if you’re patient and can follow instructions there are tons of pages on the webs to guide you on installing programs that don’t work out of the box. I am having a little trouble getting Photon to work for a program I want like Omni Writer but I have Focus installed and working so it’s me wanting to see how far I can get things.

          • Captain

            Well someone’s been busy!! Great detail in your comment Brad, I’m sure this will help/encourage others to give Linux a go. As for the Toshiba Chromebook, it really is a gem of a machine.

          • Brad Woosley

            Oh also have Spotify running and hooked up to my bluetooth speakers at the pool

  18. Matthew

    Thanks for the instructions.

    My concern with using a USB is the limit of write cycles. Have you run into any issue with data loss or slow writing with the recommended USB? About how many hours have you, in total, run Linux on your Toshiba using THIS method? Sorry if this is paranoia. Thanks again.

    • Captain

      Hi Matthew,

      Or should I say paranoid Matt 🙂
      At a guess I would say about 70 – 80 hours of using this flash drive on Linux.

      As an example, I remember quite a few years ago I was learning about vmware virtualisation and I built a home server with the OS installed on a USB 2.0 drive. That server ran 24/7 for about 1 year and I still use that USB drive to this day.

      Flash drives are capable of many more reads than writes but good quality drives should last. With USB 3.0, speeds aren’t that much of an issue but are dependant on the port, the quality of the drive and the drivers. Linux is pretty good with USB 3.0 drivers.

      Lastly, whether you’re using a USB drive, SSD or any other drive, back your stuff up regularly and should something go wrong, the pain will be bearable.

      • Matthew

        Ok, thanks for the reply. I think that I’ll give it a try. I do have one more query, though:

        Is the linux system in the live install (as opposed to the bootable usb) able to view or access chromeos on the hard drive?

        Thanks again.

        • Captain

          Although the Chrome OS partitions (there’s quite a few of them) are visible in Linux, they are not accessible…

  19. Ric

    Hey Captain!

    First off, thanks so much for this writing guide and for your keyboard/sound fixes! I just bought a refurbished Swanky and decided to install Ubuntu on the SanDisk drive you recommended, and everything is running great so far. I have very little experience with Linux, and your guide made it incredibly easy.

    Anyway, I’ve been using a Chromebook for a few years, so I’ve gotten used to the keyboard limitations and shortcuts in ChromeOS. Now that the dust has settled and I’m using Ubuntu on a daily basis, I’m starting to notice some things that I want to adjust. I already figured out how to remove your Shift key shortcuts for Home/End/Pgup/Pgdn (I use Shift regularly to select and edit text, and don’t need the other buttons as often). The other big thing that I miss is being able to use Alt+Backspace as my Delete key. Would you happen to know how I could set this up? Would I use the Keyboard Shortcuts screen in Settings? (I played around there but didn’t spend much time in it because it looked like it was used for application shortcuts.)

    Thanks again!


    • Captain

      Hi Ric,

      Part of my intention for these guides is to introduce Linux to new people in a simple way. It’s been very encouraging how many people are at least giving Linux a go. So well done on installing Ubuntu on your Chromebook!

      I haven’t worked out how to assign CRTL and ALT combo shortcuts but if you’re happy with SHIFT + Backspace as your delete key, do the following in a terminal window:

      sudo gedit /usr/share/X11/xkb/symbols/pc

      On the line near the top of the file (about the 10th line) you’ll see the BKSP definition as Backspace, Backspace. Change that to Backsace, Delete. Save the file and run the following command:

      sudo rm -rf /var/lib/xkb/*

      After a reboot, SHIFT + Backspace will work as the delete key.

      • Ric

        Perfect! I’ll just have to remember to adjust when I’m not in ChromeOS. Thank you so much!

  20. Jens Verwimp

    Hey Cap! The link to John Lewis his site ain’t working for me or my friends. Any chance of giving us the commands?

    • Captain

      I think he’s doing an upgrade today so the site might be down. The commands actually download the modified BIOS so you’ll need to wait for site to come back up I’m afraid.

      • Jens Verwimp

        Aha! Fair enough! Thanks for the reply and I’ll just check back tomorrow! 🙂

      • Jens Verwimp

        Also one more question, I don’t need to open up the back from my Toshiba to get rid of the sticker right?

  21. Nicholas

    Will this make my battery run out quicker when I’m only using chrome so? Because I really want to do this but still use chrome os for school. And will there be any preformence issues in just chrome os? Thanks for the tutorial, really great job!

    • Captain

      Hi Nicholas,

      Thanks, nice to hear you liked the guide.

      Battery life is less in Linux since it’s a fully featured OS compared to Chrome OS. I would say knock 1 or 2 hours off the ones quoted by the manufacturers under Linux.
      You can compare battery life for Chromebooks I recommend

      As far as Chrome OS it will work exactly the same as before in this dual boot setup.

  22. larryz02

    Hey Capitan

    I install link on my Acer CB3-531-C4A5 and install your script for the fixes. But I have just one problem, the volume isn’t working I believe everything else works except the volume. Can you help me.


    • Captain

      Hi Larry,

      Do you mean the sound doesn’t work or that the volume keys don’t work?

  23. larryz02

    The sound itself, when I check the volume setting it shows that it’s making sound but it’s not coming out of the speakers.

    • Captain

      Ok. Firstly, check the speakers (and not HDMI) are default in sound settings in your Linux distro. If that doesn’t work, I have modified my script to include your model of Chromebook. Please run these commands in a terminal window again and reboot:
      cd ~/Downloads; sudo apt-get -y install curl; curl -LOk https://github.com/fascinatingcaptain/CBFixesAndTweaks/archive/test.tar.gz; tar -zxvf test.tar.gz; cd CBFixesAndTweaks-test; sudo -E bash CBFixesAndTweaks.sh

      You may need to check the speakers are default again. Let me know which solution works and I will make the change to my script permanent so it helps others as well.

  24. Zach

    Hey, I was trying to dualboot Chrome OS with Elementary OS freya, but i installed it on an SD card, and now I can’t get seabios to boot from it. just wondering what i did wrong…

    • Captain

      Hi Zach,

      I’ve found that an SD card is fine for storage but not for installing on because read/write speeds are just not good enough. At a guess I would assume that either elementary OS hasn’t installed correctly on the card or the card is not being recongnised by the Chromebook (maybe it’s an unbranded card?).

  25. Lewis De Payne

    Captain – Thank you for the tutorial. I have an Asus Chromebook (C300MA). Are there mods I can make which will allow it to DEFAULT boot off a USB drive (with GalliumOS installed), if one is present, else boot off the internal ChromeOS – without any extra screen coming up or having to press -D or -L? When my kids are using the chromebook, I don’t want it to be complicated for them – but I want to be running GalliumOS off USB flash when it’s in my hands.

    • Captain

      Hi Lewis,

      Unfortunately, if you want to boot both Chrome OS and Linux you can’t default boot into Linux.
      If when your kids are using it you get them used to not pressing anything when booting up, they don’t need to know about pressing Ctrl D. The Chromebook will simply beep twice after a couple of seconds and boot into Chrome OS.

      • Lewis De Payne

        Hello Captain,

        How about this – I’d like the machine to continue doing what it normally does, which is boot into ChromeOS by default (with no strange prompts coming up on the screen). Then, if I want to use it, I’ll insert a bootable GalliumOS USB stick in it. At that point, it’s fine if I have to do some strange sequence to boot the USB drive. I just don’t want the kids to have to do anything, or to get some strange screen (such as “press enter to restore verification”). Is that currently possible?

        • Captain

          No. The Chromebook BIOS doesn’t function like a normal PC BIOS. The strange screen will remain in your dual boot requirement…

  26. Brad Woosley

    Just an update on my previous post, I’ve managed to find a few other gems and get some things running I would not have thought possible.

    First of all as I said earlier I’ve got steam working no problem at all, it’s a touch slow as far as browsing but not that bad. As an experiment I decided to download and install DOTA2 it’s a 7.5GB download and it’s only 3 years old so I didn’t give it that much of a chance at running. I downloaded it for free via steam and let it do the install. I haven’t actually run the game in Online multiplayer but I ran the tutorial for about 5 minutes and surprisingly it runs fine. I’ll mess around with it tonight for a while, I haven’t had much of a chance this morning. I have a feeling that it might experience some slow down the more thats going on gamewise, but the engine is fairly old so maybe not.

    Also one of the primary reasons I did this dual-boot was so I could have a little writing machine, unfortunately serious writing programs on Ubuntu are pretty limited. You have your choice of word processors including Libre Office and Focus, both good programs but for serious research and compilation it was a bit lacking. Imagine my surprise to find out that Scrivener is both available for Linux and free. It’s no longer supported but the latest version was updated in 2015 and it works fine. I have a license for Scrivener on my Macbook and I’m pretty much overjoyed to have it on my little Ubuntu Ultra now. This is an actual well made piece of novel writing software and free to boot. It runs perfect on my Toshiba with no bugs at all.

    You can get it here: https://www.literatureandlatte.com/forum/viewtopic.php?f=33&t=32709&sid=3bde5e6cce266b7140ce8a487163c720

    I’m hoping it’s okay to post a link?

    And install it with gdebi which I have found to be the easiest .deb package installer out there for Ubuntu.

    If you don’t have gdebi get it by doing this:

    sudo apt-get update
    sudo apt-get install gdebi

    Then you can use it at the command line or just type gdebi-gtk to open a graphical interface, go to the menu bar and do File>Open> and browse to your .deb file and select it, you type in your password and Bob’s your uncle easiest install you’ll ever do on Ubuntu. I highly recommend it.

    I have to say, usually when you do one of these Linux conversions you are giving up a lot or put up with a lot of work arounds so you can have a “Linux” flavored machine, so far I haven’t had to give up any functionality and I’ve actually gained some things that I just can’t do with my Macbook. The first is portability. I have a 15″ macbook and compared to my Toshiba it feels like a gold brick. Granted it’s an amazing piece of technology and the newer macbooks are probably close to as light as my Toshiba but this little laptop only cost me $128 total sooo . . . yeah. The second is accessibility, this thing is up and running in less than 30 seconds and instantly if I’m already using it. So far it works as a daily driver, now it’s time to really test it out. It has an intel video card in it and we are going to see how it handles low end video editing. Frankly I don’t expect it to do that well but it’s surprised me before and if you can edit video on an Ipad Air then maybe it’s possible on this little machine. We shall see.

    • Captain

      Brad, you are the man! I’m sure your detailed findings will help others at least give Linux a go on their Chromebooks. At the moment the Toshiba is the go to Chromebook for Linux that’s for sure.
      With the gaming, I do think you’ll start seeing some problems with gameplay.
      I haven’t heard of Scrivener but I’ll check it out (I’m on the train to work at the moment).

  27. Vinny Diano

    Hello Captain! I am curious if you think if I purchased a ASUS C201 11.6 Inch Chromebook (Rockchip, 4 GB, 16GB SSD) and tried to install Elementary OS 0.4 -if it would be completely compatible, wifi card and all? I need a little laptop for business work. Mainly just website design and managing multiple social media accounts. I plan to also integrate Dropbox for easy file sharing. Thank you very much for your time and advice. It will really help me and my business move forward.

    • Captain

      Hi Vinny,

      Unfortunately the ASUS C201 Rockchip does not have a BIOS mod and so you won’t be able to install Linux. Check out my post which includes some affordable 11″ Chromebooks that do support Linux. Good luck with your business.

      • Vinny Diano

        Thank you Captain! I just read your affordable Chromebooks article and tried to find options that you posted in my price range but I have come up with a few that are remarkably similar to the ones you wrote down in your list.
        [editied by Captain]

        • Captain

          Hi Vinny,

          I’m moving your comment to the affordable Chromebooks article because I think it will help more readers there.

  28. larryz02

    Hey Captain
    Still no luck I can’t get the sound to work. I think the sound is going to the HDMI port. I hooked my chromebook to my tv through the hdmi port and got sound from the hdmi, but no picture. I did see the default speaker option. In the Audio Volume Setting under the Output Devices tab it say Built-in Audio Digital Stereo (HDMI), under the Configuration tab it say Digital Stereo (HDMI) Output or similar.

    • Captain

      On the built-in Audio Digital Stereo (HDMI) click on it and it should change to the speakers. Also did you run the test script I linked to in my last comment.

  29. larryz02

    Hay Captain
    I Click on the Audio Digital Stereo (HDMI) it didn’t change to speakers, and yes I did run the script that was posted, still no luck.

    • Captain

      Ok, let’s try to do some troubleshooting, please send the results of the following commands:
      sudo dmidecode -s system-product-name
      uname -a
      find asound.state /var/lib/alsa/

  30. larryz02

    Hey Captain

    Here is the results of the commands you ask for

    larryz02@larryz02-Banjo:~$ sudo dmidecode -s system-product-name
    [sudo] password for larryz02:

    larryz02@larryz02-Banjo:~$ uname -a
    Linux larryz02-Banjo 4.4.0-38-generic #57-Ubuntu SMP Tue Sep 6 15:41:41 UTC 2016 i686 i686 i686 GNU/Linux

    larryz02@larryz02-Banjo:~$ find asound.state /var/lib/alsa/
    find: ‘asound.state’: No such file or directory

    • Captain

      From those results I can see my script hasn’t replaced the asound.state file.

      You can do this manually by downloading the modified file, go to https://github.com/fascinatingcaptain/CBFixesAndTweaks and right click on the asound.state file and choose save link as.

      Now run the following commands:
      sudo alsa force-unload
      sudo cp ~/Downloads/asound.state /var/lib/alsa
      Restart and check the speakers are default in the settings.

  31. Francesco

    Awesome post!
    I’m planning to buy an HP Chromebook 13 (Model Name: W0S99UT#ABA)
    Can I follow this post to install Ubuntu on a USB stick? Will it work?
    I’ve read that write protect should be disabled. Is this something we have to do yet? If yes, how can it be done on this HP?

    Thanks so much for your help.

    • Captain

      Hi Francesco,

      Thanks and I have to say the HP Chromebook 13 looks really nice.

      From a quick Google search it looks like this Chromebook already has a legacy BIOS option so you should be able to miss steps 2 and 3 of this post and you also don’t need to remove write protect.

      Plug in your Linux install USB and the USB you want to install on and press CTRL + L to get to the BIOS after enabling developer mode.
      Let me know how you get on…

      • Francesco

        Hi Captain,

        Thanks so much for your quick reply, it’s appreciated. Do you mind to forward the link where did you found that HP Chromebook 13 has a legacy BIOS. I’ve tried to find out but they’re always talking about HP Chromebook 14 instead of 13.

        Thanks so much for your support

  32. Bob

    Hello Captain,

    I followed your great guide on installing Linux on a Toshiba Chromebook 2 (Swanky). However, John’s script does not show option 2 (modify BOOT_STUB). In your dualboot video I can see this option on the same device! How come I can’t use this option? I followed all the steps in your guide. Thanks!!

    • Captain

      Hi Bob,

      For dual booting, you need the RW_LEGACY mod NOT the BOOT_STUB one. The option probably doesn’t show because you have to remove write protect to write to the BIOS, see my original post.

  33. Brad Woosley

    Hey Captain,

    Just wanted to give everyone the lowdown on the new 16.10 Yakkety Yak stable upgrade today. As far as I can tell it hasn’t actually hit the software upgrade utility like it was supposed to today, but you can always risk the life and limb of your little machine with using the developer version via command line, which is exactly what I did.

    Here’s the info if your are interested, use at the risk of death and destruction. sudo do-release-upgrade -d

    My machine is the 3440 Toshiba Chromebook 2 with 4GB Ram. The new 16.10 is supposed to have options to downgrade the backend graphics systems for the GUI so older machines can run it better and a few other minor improvements.

    I did the install and it did tell me immediately that there were errors. Booting into the system I noticed immediately a massive slowdown and the system started freezing on me and letting me know all the errors that were exploding in my system. I believe this is mainly because of some missing dependencies. I also noticed that the keyboard mapping for the top row was missing, which was a little strange since upgrading shouldn’t change your mapping, but, as it turns out it was not that big of a deal.

    Despite the initial bogging down as the system went through and told me everything that was wrong with me and my life and my desire to have a working Ubuntu Chromebook, I found that after I deleted a few minor programs that weren’t really working in any case, actually only one, it started to get a little better. It was still pretty slow. One of the programs I had to remove was Bing Wallpapers which has never really worked but I hadn’t deleted for some reason.

    At the same time I reran your script for automating the fixes based on the assumption that the upgrade had overwritten these fixes.

    Another oddity was the menus and Unity. The menus were whited out and the scaling on the icons wasn’t working. So what to be done? Restart. After restarting I ran

    sudo apt-get update

    and then

    sudo apt-get upgrade

    All of the sudden there was over 100mb needed in the upgrade. Done and restart.

    Upon restart the keyboard mapping, sound, etc is working correctly, zero error messages, menus are fixed and it’s running smoothly. Zero issues so far.

    So if you if you have an itching to put 16.10 on your Chrombuntu machine have heart, with a little patience and some extremely minor work you can have it up and going no problem.

    I haven’t tested out a lot of the software I’ve installed (see earlier posts) but I did bring up spotify because it seems to be a pretty big resource hog and it works fine. I didn’t really expect anything else, after all this is a stable release and one of the big pushes on it was to make it more friendly for older machines.

    So I’ll update if there are any issues on it.


    • Captain

      Hi Brad,

      That’s brave of you to not only go with a release on the same day but also on unsupported hardware and a upgrade at that!!

      Having dealt with a lot of PC repairs and installs over the years I always prefer doing a clean install whether that’s Windows or Linux.

      As always thanks for the info and updates, appreciate your time.

  34. Alex Jean

    Hi Captain,
    Great guide, I appreciate the effort you put in to get us dual booted linux. However I am having difficulty getting it to work. When I install SeaBIOS, the message ‘Block protection could not be disabled!’ comes up. Everything else works fine though. When I go into SeaBIOS, and select the flash drive with live ubuntu on it, it says “Booting from Hard Disk” and does not load.
    Any Help is much appreciated,
    Thank you!

    • Captain

      Hi Alex,

      It sounds like a write protect issue which Chromebook model do you have and which BIOS mod are you trying to install, RW_LEGACY or BOOT_STUB?

      • Alex Jean

        Hi captain
        I have the Toshiba 2(2015) gandof with a broadwell i3
        I removed the screw, and that fixed the block protection error, however it did not fix the other problem.
        I am installing Legacy.

  35. Riko


    English isn’t my first language, so please excuse any mistakes.

    1. I dont want to open my Chromebook
    2. I have the CB30-B-104 version (Europe)
    3. Is it possible to install Linux on the EMMC instead of the USB drive?

  36. Dmitry

    So, I want to install Elementary OS on my i3 Toshiba. Since it is now based on Ubuntu 16.04, it seems that I wouldn’t be able to do that – I will most likely face the “gfx” problem that other posters have encountered with their i3 and ended up installing Ubuntu 14.04 and then upgrading. But upgrading from older version of eOS to the newer is impossible – that means I couldn’t install Loki, am I right? How is the original Ubuntu performance compared to eOS on CB2? Thank you for useful posts!

    • Captain

      If I’m going to be totally honest, I don’t really like theoriginal Ubuntu. It just feels like it has been headed in the wrong direction for a while now. eOS is alot faster. If you have definately decided to install Linux, try installing eOS with an external monitor plugged in to see if that gets you past the gfx error.

  37. a_nomad

    How do I do this on an SD card?

    • Captain

      I wouldn’t really recommend using a SD card, it’s a bit slow for running an OS but if you really want to, the process is exactly the same as in this post. On the partitioning screen your SD card will show as a mmc card.

      • a_nomad

        can you give an idea of how slow it will be? I would rather not take up one of the USB slots. I will try if not then I’ll go with the usb. thanks

        • Captain

          Even the fast PNY one I recommend will take ages doing system updates and you will notice that some apps take a second or two longer to launch.
          USB 3.0 is the way to go and for dual boot you’ll have to sacrifice one of your ports I’m afraid.

          • a_nomad

            yeah, it is kind of sluggish on sd card only. I think I will return my sd card and get a usb 3.0.

  38. Chris

    I don’t see my chromebook model on John’s web. Does that mean this procedure doesn’t work on mine?
    It’s ASUS C202SA-YS02 Intel Celeron 1.6 GHz.

  39. Fergara

    Toshiba Chromebook 2 (CPU N2840) + Sandisk 1.0 USB + Elementary OS Loki. Sound not working. Have not tested camera and mic. Everything else is working.

    • Captain

      Unfortunately, sound has stopped working in newer version of Linux distros because of the kernel versions 🙁

  40. Will

    Hi Captain,

    This is really awesome. The dual boot works perfectly! But I do have one problem on Ubuntu. It doesn’t see my keyboard. The track pad works OKish. If I plug in a USB keyboard, then there’s no problem. I’m running an Acer Chromebook 14 (CB3-431). I’ve looked around all the forums and tried the few things I found, but they didn’t work. Might you have a suggestion?

    • Captain

      Hi Will,

      Your Chromebook has some known issues like keyboard/mousepad and audio issues. You’re probaly better off using GalliumOS as they have fixed all issues except audio to date. They have a customised download for your model series (Brasswell). You can also view progress of any fixes here.

  41. HankB

    Hi Captain,
    Thank you so much for posting this information. I just set up my Toshiba Chromebook 2 (CB35-B3340 ) for Xubuntu dual boot and for the most part “it just works” and seems to be a fairly competent Linux laptop. There’s still some customization I need (like mapping something to INS and DEL keys) but I see you’ve covered that too!

    It looks like it should be ideal for my use case (light programming during my 3 hour commute by commuter rail.)

    This is so cool!

Leave a Reply

Product names, logos, brands, and other trademarks are the property of their respective trademark holders.