Monday, August 27, 2012

Update: ChrUbuntu 12.04 now works on Cr-48 and Samsung Series 5!

I'm happy to announce that I finally found the time to get ChrUbuntu 12.04 working on the original Cr-48 and Samsung Series 5. I achieved this by custom compiling 64-bit Chromium OS kernels for both devices. The instructions in the ChrUbuntu 12.04 blog post have been updated to point to the new script. A few things about this new version of the script:

  • The script now works on the 1st generation Cr-48 and Samsung Series 5 Chromebooks. A custom 64-bit kernel is used for Ubuntu. Newer Chromebooks will use the official 64-bit Chrome OS kernel found on the device at script execution time.
  • I don't have an Acer Chromebook to test with and there's no public overlay to compile for the Acer (ZFB) device. For now, these boards will use the Cr-48 kernel. If an Acer user tries this script, please report your results back here! I'm particular interested to know if the trackpad and audio work properly.
  • The script now detects the size of your hard drive and dynamically adjusts the maximum size you can select for the Ubuntu partition. Hardware modders rejoice!
If you're an original Cr-48 or Samsung Series 5 owner and are looking for a way to say thanks, consider upgrading or getting a family member a Samsung Series 5 550 Chromebook or a Samsung Series 3 Chromebox using these links. The price is the same but a portion of the cost goes to support this blog!


  1. Hi Jay, thanks for your efforts!

    I'm having trouble with the scripts. I get prompted to create the partition size, it downloads the .bin through .bz files, runs a few more lines of code,

    It then reboots and it will only boots back to the defaults of setting up Chrome and choosing the wifi network. Even after executing the commands to set ChrUbuntu as the default.

  2. This comment has been removed by the author.

  3. wget; sudo sh hnkxo
    That one works fine

    Mario Fish 2330 after restoring to factory, running your script, it prompts for the size, formats, reboots, presents the sad face, then displays "Your system is preparing itself", reboots I connect to wifi, it starts to DL the files, reboots and continues to go into the Chrome setup screens.

    1. Try now, paying close attention that I've updated the script execution line to be "sudo bash kxf3n" instead of the old "sudo sh kxf3n". For some reason if bash wasn't forcibly specified, the script would sometimes run under the more limited shell causing issues in the script execution.

  4. I had successfully followed your 12.04 post to install chrUbuntu on a chromebox some weeks ago. I have a second, identical chromebox, and am attempting to do the same for it today, Aug 29. It runs through the script loading the files, and somewhere (not sure where for reasons that will become apparent), it shows the "unhappy" "chrome OS verificationis turned off" screen, does its few seconds of whatever, than goes to a blank screen. Waiting for a long time doesn't change. If I power down and back up, get to chrome OS screen, ctrl-alt-F2 gets me shell login, chronos,etc. $ sudo sh kxf3n doesn't work, so apparently script is now gone, so do $ wget, etc., and it starts from beginning again. Goes through, and faster than I can read, it returns to the $ prompt, then goes to the "unhappy" screen, and then after a few secs, to the blank screen.

    Note, while it was writing files, for some it would say something to the effect of [one of the filenames].bz2 needs to be rewritten because [verylongstringofchars] not equal to [anotherlongstringofchars].

    Have repeated this several times, and still getting same results.

    1. Did you resolve the needs to be written error?

  5. To elaborate on above, cycled power again, ctrl-alt-F2, login as chronos, ls shows Downloads (which is empty) and kxf3n.Script starts executing.
    Some of the files
    ..binab.... needs to be written because it's XXXXXXX not xxxxxxxx.
    but they appear to download correctly after.
    Script appeared to end correctly, and was doing some additional tasks, including something with inodes when screen went dark, then to "chrome OS verifications turned off" screen, then after a few seconds the beep-beep, a few more seconds, and blank screen. Have waited for 24 minutes of blank screen before cycling power.

    Looking at the end of the script, I looked at /mnt/stateful_partition/ubuntu, which contains foo.6 and the .sha1 files from aa thru bz, so I assume the script got that far at least once.

    I did the cgpt command at the end of the script, and then reboot, and this time it took me to the chromeOS.

    When I ctrl-alt-F2, and ls, instead of Downloads and kxf3n, now there are a whole bunch of files.

    So ...???

  6. More on above - I can see that foo.6 is where it should be, so I assume the script successfully completed that step.

    If I type in the command
    /usr/share/vboot/bin/make.... towards the end of kxf3n, I get:
    INFO Kernel C: no kernel boot information. Ignored
    ERROR No valid kernel partitions ofn /dev/sda (6)

    I assume that this might be happening when the entire script kxf3n runs, and leads to the black screen after the reboot.

    It is difficult to see when kxf3n runs because the end happens very quickly.

    1. I just tested on my own I/O Chromebox (which I had not installed Ubuntu on since June) and it worked perfectly so I'm not sure what's up here.

      What channel and release number are you on? I had no problems starting from stable-channel updated to the latest $21 release (if you do a USB restore currently, you'll be on R20 and need to update to R21).

      Edit kxf3n and comment out the reboot line at the very end of the file with a #. After downloading the last bz file, what else does it say? Anything suspicious?


    2. Try re-running with "sudo bash kxf3n" instead of "sudo sh kxf3n". I think the issue is with sh sometimes using the more limited shell rather than Bash.

    3. I had let chromeOS update itself first, so it was latest release (as of Aug 29)


      version 22.0.1229.21 beta
      platform 2723.37.0 (Official build) beta-channel stumpy
      Firmware Google_Stumpy 2.102.0
      last updated 8/26/12

      I directed output of script to a file. First lines were:

      Oh good. You're running a developer BIOS...

      -e Chome OS model is: STUMPY YELLOW A-C 7520

      -e and you're running a 64-bit version of Chrome OS! That's just dandy!

      -- Last lines were:

      Setting Ubuntu kernel arguments and resigning kernel partition...
      INFO: Making change to 6 on /dev/sda.
      Kernel C: Replaced config from /mnt/stateful_partition/ubuntu/foo.6

      When I get a chance, I'll try "Bash".

      Even after letting script complete, powering down and back up, if I ctrl-alt-F2, chronos, then ubuntu says can't find command.

      Seems strange to me too, since the two chromeboxes I have both came from GoogleIO, were acquired within days of each other and seem to run fine in chromeOS. I added Linux to one back in July using your script and have been very happily using on a daily basis since. Haven't gone into ChromeOS, and am almost afraid to let it update if it's going to have an impact on the Linux side.

      By the way, in this blog, I choose reply as google account, and it shows me as unknown. - atersol


    4. I just wanted to chime in that I'm having the same issue, and I've been using "sudo bash" and not "sudo sh" to no avail.

    5. Just tried it on a 3rd Chromebox, this one the Celeron, bought from Amazon. Worked fine. On initial powerup, it updated ChromeOS, second time through I ctrl-alt-f2, did the script (2x) and booted into ubuntu fine.

      Went back to Chromebox#2, did the script again (just 1x since already partitioned), using wget...; sudo bash kxf3n; and still have the same result - after script, goes back to "unhappy" screen, then to blank screen.

      In summary:
      Chromebox#1 (from Google I/O, i5): ran script in late July, working fine since.
      Chromebox#2 (from Google I/O, i5): ran script in other day, won't boot to linux
      Chromebox#3 (from Amazon, celeron): ran script today, boots to linux.

    6. Having the same issue with the Google I/O Chromebox.

      I noticed that when re-running the script, specific hash checks fail and their files are being re-downloaded. I suspect something writes to the partition or the files are incorrectly written to the SSD.

      Any ideas?

  7. On Chromebox#2 (see previous comment), in script commented out 'reboot', put in some reads so I could see error messages.

    ERROR: Failed to resign Kernel C. Message: ERROR: Error verifying key block.
    e2fsck 1.42 (29-Nov-2011)
    e2fsck: need terminal for interactive repairs
    resize2fs 1.42 (29-Nov-2011)
    Please run 'e2fsck -f /dev/sda7' first.

    After script finished, sudo reboot results in "unhappy" screen first, then blank screen, as before.

    1. tl;dr: If you're getting a black screen after reboot when you should be getting chrubuntu, system restore to default chromeos and try again.

      If you're still having this issue, what solved it for me was restoring the original chrome image (Following these instructions:, and then following the instructions in the original post here (

      I think the issue was possibly that I used a different script for the first part, then switched to the right one, and something wasn't right because of that. Fully starting over worked for me though. I also never logged into chromeos after the restore - so maybe there's an update that screws with it.

  8. This is working on the AC700 perfectly. Right out no more wifi drop issues. Performance is drasticly increased. Reverted back to factory via recover, updated to latest dev, installed. Running great with Gnome3 and caffeine.

  9. After first run of script, ChromeOS says "System is repairing itself", then I run script again, Chrbuntu downloads itself, but I see only blank screen after reboot.

  10. I take it that this now works regardless if Chrome OS is using a 32-bit or 64-bit kernel?

  11. I can not for the life of me get past a black screen on any ubuntu script. IO chromebox (i5).

  12. If building a recovery image using the tool in linux, what image do we dl while in terminal? Been searching around but I can not find the image name. Stumpy Yellow A-C 7520 does not show up in the terminal recovery image listing and I can not find a thread that states which is what... If you know, please share as it will help me and others who may be searching. I will dig through a failed log in windows from the .exe file and see if it can be found in there.

    1. the .exe image creator in windows actually worked once and I was afraid to retry and get an error for a log. If anyone else can post the image file name for Linux users, that would be great.

  13. This might seem like a strange question, but is there a way to remove ChromeOS completely, so that all the storage space is dedicated to ChrUbuntu?

    I have a Samsung Series 5 Chromebook, and I successfully installed 11.04 on it using your instructions. However, I find myself spending almost all my time (90%+) in Ubuntu, and I'm getting frustrated with lack of drive space. I'd like to avoid buying SD cards if possible.

    I'm sure the install commands could be modified to essentially make the install use all of the 16 GB, but I'm not adept enough to see how to the proper syntax would be structured, and I'd rather not "brick" my Chromebook and have to start over with a restore.

    I figured this was a good time to do this, as I'd like to switch to 12.04 or 12.10.

    Any help would be appreciated!

  14. Could you make ChrUbuntu for the Series 3?

  15. Hi Jay Lee
    I have acer c7 chromebook. I tried to install ubuntu in my chrome i successfully did up to the firmwire update completed. after that i couldn΅go ahead. It ask kernel usb drive but and press ctrl+U but i culd not do that now hou can i go forward from there to complete it. Please give me idea. Thank you in advance.


  16. NFS is missing! :-(

    > mount.nfs: No such device

    How can I add NFS support?

  17. I had Ubuntu on my series 5 Chromebook and it was glorious. A corrupted packet update borked my drive. I've been trying to reinstall Ubuntu 12.04 on my Chromebook and I keep getting a (Broken Pipe) error at portion Any chance this file needs to be repaired, so we can take advantage of your awesome gifts to us?

  18. I know for a fact that on my zgb_he board (Wi-Fi-only Acer AC700), Wi-Fi, multitouch trackpad gestures, and audio (if it didn't work, the volume control in indicator-soundmenu would be non-functional, and yet it is) all work correctly. And upgrading the ChrUbuntu installation to 12.10 (by modifying the Update Manager settings to notify for all releases instead of just LTS ones) only makes the functionality better.

  19. hey guys i just tried this install on my new chromebook and i'm also getting the "Cannot write to '-' (Broken pipe)." error for application/x-bzip2.

    anyone know how to work-around this? it seems to just loop endlessly.

    i'm running fedora 17 on the chromebook right now (via a terrible manual install process) and i want to ditch it for ubuntu!

    1. guys i got mine figured out. i was running the script from my Fedora 17 command line, and the script was looking for something in the background of the chromeOS. so i ran the script from the chrome developer mode, and it all went smoothly.

      just an FYI for anyone else doing as much tinkering with this chromebook as i am doing :)

  20. Does anyone know how to add a kernel module to this build? I'd love to add the 'wacom' module.

  21. I installed ubuntu from this script on a CR-48, it went fine. Then I flashed to the InsideH20 BIOS now I can't get to a terminal window in Chrome OS I know it doesn't have anything to do with this itself but I was wondering if anyone had any ideas.

  22. Hello,

    My wife teaches 3rd grade and just got 5 of these Samsung Series 5 chromebooks for her classroom.
    I'm wondering if I should install Ubuntu on them.
    If I follow the updates April instructions what will I be left with? A dual boot setup?
    How safe is this? If something gets a little screwed up is there a way to flash the factory image back on these things?

    I know with Android after unlocking the bootloader if you can get into the bootloader you can fix your device with the factory images from google that install with a .bat or .sh script.

  23. Followup question: If after following your instructions I end up with a dual boot setup, will the ChromeOS operating system receive updates or do the updates make assumptions about the disk layout?