Thursday, December 27, 2012

So You Want ChrUbuntu on a USB / SD Card? Well Merry Christmas!

Update #2: I've updated the script so that module loading works with beta and dev channel Chrome OS kernels. If you were on beta or dev channel and ChrUbuntu booted but you couldn't connect to WiFi/ethernet, try now. Thanks to not-so-lazy commenter "The Lazy Husband" for the pointer and fix. I've also added a possible fix for some people getting out of space errors.

Update: I've updated the title since it doesn't look like USB hard drives work properly (USB Flash drives do work). I haven't tested extensively but my guess would be the Chrome OS firmware simply doesn't support booting from USB hard drives like it does flash drives. Also, I should have mentioned earlier, the Cr-48 will not work with USB Flash / SD Cards either since it does not support the CTRL+U boot method.

I'm happy to announce updated versions of the ChrUbuntu install scripts that supports installation to an external USB or SD Card leaving Chrome OS and the internal SSD unchanged. This works for all Chrome OS devices including the new ARM-based Samsung Chromebook. Your USB / SD Card needs to be 8gb or larger and all current data on it will be lost. Installation is very simple, just follow the normal ChrUbuntu instructions but specify the correct script below instead of the old script (I'll update the main instructions as soon as some of you verify this worked for you). You also need to specify the device name of your external drive. Depending on your Chrome device, this may be something like /dev/mmcblk0 or /dev/sdb. You can find out what devices you have with the command:

lsblk | grep disk

Look for the device of the same size as your external drive. Add /dev/ to the beginning of the device name. In general:
  • The 1st USB drive plugged into an x86 Chromebook will be /dev/sdb
  • The 1st SD Card plugged into an x86 Chromebook will be /dev/mmcblk0
  • The 1st USB drive plugged into an ARM Chromebook will be /dev/sda
  • The 1st SD Card plugged into an ARM Chromebook will be /dev/mmcblk1
To install ChrUbuntu to a SD Card on an x86 Chromebook, run:

wget http://goo.gl/tnyga; sudo bash tnyga /dev/mmcblk0

Be sure to type this exactly. That's t n y g a and if you said it aloud it'd sound like "tee in why gee aye".

To install ChrUbuntu to a SD Card on an ARM Chromebook, run:

wget http://goo.gl/34v87; sudo bash 34v87 /dev/mmcblk1

Be sure to type this exactly. That's 3 4 v 8 7 and if you said it aloud it'd sound like "three four vee eight seven". Also, make sure the USB drive (if you're using USB) is plugged into the black USB port, not the blue USB 3.0 port which doesn't support booting.

One nice thing about installing to an external drive is no reboot is needed, the script partitions the drive and starts downloading ChrUbuntu immediately.

In order to boot ChrUbuntu from an external drive, instead of pressing CTRL+D or waiting 30 seconds at the "sad computer" startup screen, press CTRL+U immediately. This makes it simple to switch between Chrome OS and ChrUbuntu. CTRL+D or a 30 second wait on bootup starts Chrome OS. CTRL+U starts ChrUbuntu.

Note that if you exit developer mode after installing ChrUbuntu to an external drive, you'll need to rerun:

sudo crossystem dev_usb_boot=1

to get USB CTRL+U booting working again. Be sure to share your success or failure (with details in the comments below!

Now do you need a good SD Card to use with ChrUbuntu? Purchase one of these from Amazon and a portion of the cost goes to support this blog!


273 comments:

  1. # The 1st SD Card plugged into an ARM Chromebook will be /dev/mmcblkp1

    /dev/mmcblk1

    ReplyDelete
    Replies
    1. Hey, is there a way to reserve 1-2gb of main SSD for boot essentials to speed up the boot speed, and softlink the larger directories to the SD card?

      Delete
  2. I'm actually very curious how this works out. I've been wanting something like this for a while now but not necessarily ChrUbuntu. Is this pretty much OS/Distro agnostic or are there other key bits to worry about?

    ReplyDelete
  3. i wisshhh i could do this - but my stupid residence has a problem with the net - so im on via a slow damned mobile data connection.
    im doing this 2morrow.


    im actually trying to work gentoo INTO the chromeos...

    as in - get a developer chroot up and going, and add some things i'm used too - .. a nice dhcp client - dyndns client, nano, and a few other goodie then copy them back onto google-drive then copy to the main system via shell..

    any help would be greatly appricated..

    ReplyDelete
  4. Tried this out tonight. The install script keeps giving me an error trying to download "ubuntu-1204-arm.binak.bz2"

    It stops after it pulls about 8% and says:

    Cannot write to '-' (Broken pipe)
    9224+0 records in
    9224+0 records out

    Any thoughts?

    ReplyDelete
    Replies
    1. I second this behavior, though mine is stating:
      9212+0 records in
      9212+0 records out

      error writing downloaded file * . should be: hashvalue is: hashvalue. Retrying...

      Delete
    2. file is ubuntu-1204-arm.binak.bz2

      Delete
    3. Having this problem myself, it gets to 9% before saying there's a broken pipe.

      Also it says:

      shouldbe: [long hex number] is:[different long hex number]

      Delete
    4. I ran into this issue also. I edited the script to be able to see errors from dd tool and got this:
      dd: writing `/dev/mmcblk1p7': No space left on device
      9157+0 records in
      9156+0 records out

      Delete
    5. Update: Using GNU parted I switched the disk label (partition table) to msdos (instead of gpt created by the ChrUbuntu script). I also created a single FAT32 partition spanning the whole SD card.

      Then retried the ChrUbuntu script and it succeeded.

      Delete
    6. I tried this with a Sandisk 16GB card and had trouble.

      Here was my procedure on Ubuntu:
      - Put card, in card reader, in USB slot
      - Found device name as /dev/sdc1 via df
      - umount /dev/sdc
      - sudo parted /dev/sdc
      - mklabel msdos
      - mkpart primary /dev/sdc 0.0 -1s (parted advised this was "not best for performance" or somesuch, I ignored this)
      - quit parted
      on quit parted advised that I might need to update /etc/fstab.

      After this card did not appear on the filesystem. df couldn't find it. I rebooted the computer, still can't see it.

      At this point I could use help:
      - figuring out how to do this properly
      - recovering the card (though I can just replace if it has been bricked)

      Thanks in advance.

      Delete
    7. I'm also having this problem, does anyone have a fix?

      Delete
    8. I experienced the same problem. I'm afraid this would be my first Unbuntu install, so I'm not entirely sure how to fix.

      Delete
    9. Hi Guys,

      In my ignorance, I simply tried installing it again. During the bug I held down the power button for 5-10 seconds to get the system cold. I repeated the install instructions and found that the install worked perfectly. I don't know if this was a fleeting thing, but I'm typing to you now on my ChrUbuntu install.

      Hope it helps others.

      -D

      Delete
    10. Same issue here! Can anyone help me out?!

      Delete
    11. Well, I successfully installed Chrubuntu twice on two different SD cards, but the third time it wouldn't work, giving me the pipe error. Until there's an official fix, give the following a try: http://www.whatthetech.info/chrubuntu-broken-pipe-fix/

      It worked for me, and I'm hoping it wasn't just a coincidence!

      Delete
    12. On December 30, 2012 - Gerald Young wrote:
      "Update: Using GNU parted I switched the disk label (partition table) to msdos (instead of gpt created by the ChrUbuntu script). I also created a single FAT32 partition spanning the whole SD card.

      Then retried the ChrUbuntu script and it succeeded."

      @Gerald, quick question:
      Did you modify the script first to remove the 'parted' and 'cgpt create' & 'cgtp add' commands before you ran it again successfully? I created an msdos / fat32 16gb sd card and am about to try the script again but I'm afraid the script as written will just overwrite it with the gpt partition table. I'm familiar with scripting so I'd be appreciative if you told me how you did it. Booting the C7 from an sd card instead of a usb stick with ctrl-u would be HUGE for me.

      Thanx in advance.

      Delete
  5. Sorry for the silly question, but would the script function in the same way for a local installation? Particularly the "choose os at boot" functionality with Ctrl+U, as that's a lot "nicer" than having to enter a command each time i want to switch which OS I use.

    ReplyDelete
    Replies
    1. Ctrl-U will only boot a ChronOS signed image. If Jay made a fake ChronOS signed Ubuntu, it would be a lot more invasive work for him and might branch off the Ubuntu too much for proper updates.

      Delete
    2. Hold on, why couldn't we use a ChronOS-signed boot manager like Plop on the USB, install Chrubuntu on the HDD, and use Ctrl-U to boot to the external that then says boot to the internal, and Ctrl-D does vanilla ChromeOS?

      Delete
  6. CTRL+U for external? That's soooo much easier than booting internally.
    Totally doing this.

    ReplyDelete
  7. Thanks! this works great! i had no issues at all.

    ReplyDelete
  8. Hi. Nice work. I'd first like to remove the previous installation from my 16GB SSD. Should I just go through the old process again and choose to give 0 GB to ChrUbuntu?

    ReplyDelete
    Replies
    1. You'll need to perform a Chrome OS USB recovery to give the full 16gb SSD back to Chrome OS.

      Delete
  9. What is the speed like on an SD card? Is it slower?

    Does anyone have any idea why I can't
    suspend on my 550? Everything else works FINE - it used to suspend; it stopped suddenly. I then compiled by own kernel (instructions found on Google Groups) and nothing changed.

    ReplyDelete
  10. ERROR: Missing previously packed blob.

    what is this?!

    ReplyDelete
  11. ok, dunno whats going on - ... this is what i have.

    from FILES two external drives showing - one seems to have ubuntu on, and the other is inaccessible..

    afain, i know still in developer mode, and i press ctrl+d to boot the system,
    however when i boot with SD inserted, it says
    "there is no ChromeOS installed SD/USB drive" or some juglinz like this..

    i cant seem to boot via the SD.

    it did say - that this system doesnt seem to be 64bit so it will install some other kernel etc..

    what do i do?!

    i desperately need ubuntu 2nite...

    ReplyDelete
  12. chronos@localhost / $ sudo -s
    localhost / # parted /dev/mmcblk1
    GNU Parted 3.1
    Using /dev/mmcblk1
    Welcome to GNU Parted! Type 'help' to view a list of commands.
    (parted) p
    Model: SD SD16G (sd/mmc)
    Disk /dev/mmcblk1: 15.5GB
    Sector size (logical/physical): 512B/512B
    Partition Table: gpt
    Disk Flags:
    Number Start End Size File system Name Flags
    6 32.8kB 16.8MB 16.8MB KERN-A
    7 33.6MB 15.5GB 15.4GB ext4 ROOT-A
    (parted)



    this is the output from parted,
    should there be a fs type for kern-a ??

    ReplyDelete
  13. This comment has been removed by the author.

    ReplyDelete
  14. This is awesome ... so incredible that a friend and I spent yesterday going nuts trying to figure it out ... eventually gave up and installed ChrUbuntu onto the SSD, which works well, but this is really what I wanted ... anyway, I plan to try this as soon as my Chromebook is free ... in the meantime, check out this post which I successfully used this morning to create a bootable SD card for ChrUbuntu!

    https://groups.google.com/forum/?fromgroups=#!category-topic/chromebook-central/chromebook/1AxOZinTBRU

    ...and here is my blog post about yesterday's experience:

    http://blogs.ncs-nj.org/minecraft/2012/12/28/minecraft-on-a-chromebook/

    This site was a HUGE help - so thanks!!!

    ReplyDelete
  15. Acer C7. Checksum failure after 48th segment, so script never completes. Also, there in no device /dev/mmcblkp0 listed.../dev/mmcblk0?

    ReplyDelete
    Replies
    1. Acer C7 /dev/mmcblkp0 errors as not found at script commencement.

      Delete
  16. This comment has been removed by the author.

    ReplyDelete
  17. i had to sudo the wget command too for this to work.

    ReplyDelete
    Replies
    1. I had to do the same, thanks for that tip. It was timing out otherwise.

      Delete
    2. It shouldn't be necessary to sudo wget. wget simply downloads the script from the website. If you're just logging in as user chronos and not changing the path, no special rights are needed to download the script.

      Delete
  18. how would i change the script so that it doesnt delete the files. i am downloading via a modem and its b*tch slow and keep disconnecting...
    i dont want to lose temp files if anything goes wrong

    ReplyDelete
    Replies
    1. The script will check which files have successfully been written and skip downloading them again if it's interrupted and re-run later.

      Delete
  19. I cannot suspend from the Ubuntu side. It simply boots normally, forgetting my session.
    Suspend still works on ChromeOS; and I came from a 100% clean non-developer mode.

    ReplyDelete
  20. Installed great! Running the ARM based version on a 16GB SD card.

    ReplyDelete
  21. Same "broken pipe" error....
    I tried the sudo wget tip...no dice.

    ReplyDelete
    Replies
    1. Make sure the drive your using is in good working order.

      Delete
    2. Broken pipe error here too. Also ran sudo wget.

      SD card is fine, less than 6 months old. 32gb Class 10.

      Dead in the water here...help?

      Meanwhile, Yoshi's script is running well for me: http://goo.gl/MLlFy (see first post)

      THANKS

      Delete
  22. Is it correct that running ChrUbuntu from a USB drive or an SD card still requires operating in developer mode, which in turn results in a much longer boot time than non-developer mode?

    I'm interested in this, but am not willing to give up the super-fast boot.

    Thanks,
    Alex

    ReplyDelete
    Replies
    1. At the "sad computer" screen, just hit CTRL+D to boot Chrome OS or CTRL+U to boot ChrUbuntu from an external drive, no delay, just an extra keystroke.

      Delete
  23. ok
    so now i am getting this error
    at the end
    g modules, firmware and binaries to /dev/mmcblk1p7 for ChrUbuntu
    cp: cannot create regular file `/tmp/urfs/usr/bin/': Is a directory
    chmod: cannot access `/tmp/urfs/usr/bin/cgpt': No such file or directory
    cp: cannot create regular file `/tmp/urfs/lib/modules/3.4.0/kernel/drivers/net/usb/dm9601.ko': Input/output error
    cp: cannot create regular file `/tmp/urfs/lib/modules/3.4.0/kernel/drivers/net/usb/rtl8150.ko': Input/output error


    help plezzzz

    ReplyDelete
  24. Okay, cooking up my second of these images. Thanks so much, really appreciate your work. Question: if I want to boot from one of these chips on a friend's Chromebook, I take it this is the procedure:

    1) Flip switch into DEV mode
    2) Install Developer BIOS
    3) Reboot & insert SD card
    4) CTRL-U to start ChrUbuntu
    5) Enjoy the awesomeness

    ...am I right?

    And, finally, will a chip made for my x86 550 work for an ARM based unit?

    THANKS AGAIN

    ReplyDelete
    Replies
    1. Step 2.5 would be run:

      sudo crossystem dev_usb_boot=1

      x86 and ARM are entirely incompatible. A ChrUbuntu install for x86 will never boot on ARM and vice versa.

      Delete
    2. can i ask a question?
      ho long does the resize process take? its been resizing for 3 hours now..

      Delete
  25. how long does the resize process actually take? its been resizing for 3 hours now?!

    ReplyDelete
    Replies
    1. It takes something like 10 minutes.
      I suggest you restore from a chromeos recovery usb and then try again.

      Delete
    2. My install using Yoshi's script took 50 minutes. The one posted here got hung up while executing. Will keep an eye out for a fix (since I'm not the only one experiencing the problem.)

      Delete
    3. I had a similar issue, when running the script to install the image, it would pause for 30-60 seconds after every single action, making the whole process take an hour (failed too, the image wouldn't boot)

      Delete
  26. Another Christmas C7, and after recovering the machine back to factory, going developer, and letting the computer work it's way through the download script, I'm wondering. Can I manually go into the machine and repartition the machine so that Ubuntu can have a section of the 320 GB to play with, without borking the Chrome Install?

    ReplyDelete
  27. Is it going to work with chromebox? does anybody tried?

    ReplyDelete
  28. # sudo crossystem dev_usb_boot=1

    sudo crossystem dev_boot_usb=1

    Invalid command on ARM Chromebook. The correct one is dev_boot_usb.

    ReplyDelete
  29. I'm getting a broken pipe. How do I proceed?

    It downloads to 41% and then says "cannot write to '-' broken pipe"
    http://cr-48-ubuntu.googlecode.com/files/ubuntu-1204.binat.bz2

    ReplyDelete
    Replies
    1. I fixed my broken pipe! I formatted the USB drive I was using and it works now. I also removed all partitions from the drive. When I insert a USB stick into my mac it likes to automatically make a partition on the drive if there isn't one there already. I just went into the disk utility and manually removed it. Stuck my partitionless USB drive into the computer and no problems running the script now.

      I will say one thing though. OMG it's so slow running from my flash drive! Like borderline unusable slow. I'm sure the USB drive I have has a pretty horrible read/write speed. It was cheap. I think I'm going to buy a 32GB SDHC card to put Ubuntu on. My question now is what read/write speed is sufficient? Do I go with a card that with 15MB/s? 30? 45? Go crazy and get one with top of the line 95MB/s? How much can a series 5 chromebook actually support with its SD card reader?

      Delete
    2. I am using this sd card from amazon:
      http://www.amazon.com/gp/product/B007ADFTUG/ref=oh_details_o00_s00_i00

      60MB/s read seems to work very well for me. I wish that I had waited to buy though so i could buy one from the links above to support this awesome developer!

      Delete
  30. Any news on the " Broken Pipe issue " installed this on a 32GB USb drive and all went well, but once I tried to an SD card I just kept getting an error at binak.bz2

    ReplyDelete
  31. is the ARM version past alpha yet? and will the chromeOS side be able to get updates if it's in developer mode? if not, is there a way to get the updates without getting rid of everything and doing a recovery?

    ReplyDelete
  32. Hi Nice steps, I've been following the steps to install Ubuntu on my second gen Samsung series 5 550 chromebook to an external usb hard drive, the I get into developers mode fine an update to dev firmware then entre the correct lines and point it towards my external hard drive it all goes through ok with no errors occurring it then proceeds and reboots to the sad computer window, I then hit ctrl + U and it flashes then beeps twice and then goes back to the sad computer window and serval seconds later goes into contius beeps and flashes then boots chrome any help would be appreciated many thanks this is my first time doing this and I don't wish to use the 16gb ssd for Ubuntu as I want to keep chrome and dn't know the code for partitioning some space for Ubuntu and want all the ssd anyway for chrome os

    ReplyDelete
  33. I'm trying to install on chromebox. Installation goes without any error messages ( at least I don't see any ) but after system is rebooting and not booting from usb if I press ctrl+U. Just beeps.

    One remark . I'm trying to install on USB hdd . Can this be a problem ?

    ReplyDelete
    Replies
    1. I've been having the same problem I've just tried it via a USB stick and it works, something doesn't seem right when connected via a usb hard drive caddy :( disappointment but usb flash drives work fine

      Delete
    2. Hm... strange
      What can be different.
      Would try with stick tomorrow
      thanks

      Delete
    3. Any ideas why partition numbers are 6 & 7 ? can this cause some problems with HDD?

      Delete
    4. Ok, I switch to USB stick and it works!
      Still can't find reason it doesn't work with hdd:) it's all looks the same. Would be very nice if it would.

      another small question . During the boot I see following errors all the time :
      EXT3-fs (sdb7): error: couldn't mount because of unsupported optional features (240)
      [ 3.308975] EXT2-fs (sdb7): error: couldn't mount because of unsupported optional features (240)
      [ 3.336356] EXT4-fs (sdb7): mounted filesystem with ordered data mode. Opts: (null)

      is it normal?
      thanks

      Delete
    5. Works very nice on chrombox
      small question
      I'm trying to attache remote to it
      but if I'm installing LIRC I'm getting following error message
      ls: cannot access /lib/modules/3.4.0/kernel/drivers/staging/lirc: No such file or directory

      Does it mean this kernel doesn't support irc modules?
      thanks a lot

      Delete
    6. Sem- I have seen this error a few times while trying to install a JRE. I am definitely a linux/ubuntu noob and have no idea why, but i have been able to get around this by making sure i am at the very root directory (cd ../../.. etc) and then using "sudo x"

      I got this error while trying to run "apt-get install openjdk-6-jre" but going to root directory and adding sudo seemed to work

      Delete
  34. And yet again, just like installing it on the internal SSD with the older script, I can't use Wifi. Mind you, I don't think the drivers are even there! How can I fix this!?!?!

    ReplyDelete
  35. core-boot requires a signed kernel to which to pass control. Jay Lee has supplied his own, compiled for the CR-48. For this to work, his script runs vbutil_kernel to reapply developer keys to this kernel, for core-boot to accept it as valid and pass control to it. The trouble is, it is not working. That accounts for the beep, or multiple beeps, after pressing Control-U. The trampoline kernel is invalid, so you are passed back to Chrome OS. The second problem is even when control is passed over, or apparently passed over, to allow grub to run an the ubuntu kernel to load, ubuntu hangs with a blank screen, before any grub keypresses work. So, it never works for some people. The final problem, of course, is that it works for some of the people some of the time. Jay Lee has put no breaks in his script - you have to add your own. I have had Chrubuntu working about ten per cent of the time using the supplied instructions, not good enough for serious use. Samsung 550, Chromebox, Acer C7.

    ReplyDelete
  36. vbutil _kernel --verify /dev/mmcblk0

    returns

    Error verifying key block

    ReplyDelete
  37. question, ok so i finaly got the SD card working
    and i got into ubuntu,

    had to startx myself bu no biggie

    however --- i do an lsmod and there are no modules?!
    there is no network device?


    any ideas? how do i debug this?

    ReplyDelete
    Replies
    1. edit:
      i also get no space left on device warnings at boot..

      Delete
    2. I get those, too, but they do not seem to be significant. As far as I can tell, Ubuntu is running perfectly.

      Delete
    3. i would guess that we are using the same hw -
      so why are your modules working and not mine..

      i try to modprob them manually and all i get are the following

      Dec 30 23:06:33 localhost kernel: [ 8.907193] Chromium OS LSM: init_module old-api-denied module= pid=876 cmdline="/sbin/modprobe -q -- net_pf_31"
      Dec 30 23:06:33 localhost kernel: [ 8.909707] Chromium OS LSM: init_module old-api-denied module= pid=878 cmdline="/sbin/modprobe -q -- net_pf_31"
      Dec 30 23:06:33 localhost modprobe: FATAL: Error inserting bluetooth (/lib/modules/3.4.0/kernel/net/bluetooth/bluetooth.ko): Operation not permitted
      Dec 30 23:06:33 localhost kernel: [ 8.913412] Chromium OS LSM: init_module old-api-denied module= pid=880 cmdline="/sbin/modprobe -q -- net_pf_31"
      Dec 30 23:06:33 localhost modprobe: FATAL: Error inserting bluetooth (/lib/modules/3.4.0/kernel/net/bluetooth/bluetooth.ko): Operation not permitted


      why would this be happening??

      Delete
    4. I have figured this out. When building the kernel you need to add a line to the config.

      Add this "lsm.module_locking=0"to the kernel config line
      echo "console=tty1 debug verbose root=/dev/mmcblk0p7 rootwait rw" > /tmp/config


      Delete
    5. ok found it!
      currently building gentoo-source using chromeos sources from

      http://git.chromium.org/gitweb/p=chromiumos/overlays/chromiumosoverlay.git;a=tree;f=eclass/croskernel;hb=refs/heads/master

      if this doesnt work,
      i'll try out that command line.. :)

      Delete
    6. @lazy husband,

      you wrote in teh code /dev/mmcblk0p7
      should that be p6 or p7??

      Delete
    7. and you've written blk0 - on chromeos - blk0 is the internal ssd,
      the external sd is blk1 -

      i got confused,
      i tried redoing the kernel with blk1p6 (the kernel partition)
      it boots,
      but i get a kernel panic,
      it cant find the root, says no fs found or something like that

      Delete
    8. Sorry i used my line from the non SD script.

      In the script you can replace this line
      echo "console=tty1 debug verbose root=${target_rootfs} rootwait rw" > /tmp/config

      With
      echo "console=tty1 debug verbose root=${target_rootfs} rootwait rw lsm.module_locking=0" > /tmp/config

      or if you already have it installed you can rebuild the kernel and install it. Essentially only run the echo line above then.
      "vbutil_kernel --pack /tmp/newkern \
      --keyblock /usr/share/vboot/devkeys/kernel.keyblock \
      --version 1 \
      --signprivate /usr/share/vboot/devkeys/kernel_data_key.vbprivk \
      --config /tmp/config \
      --vmlinuz /boot/vmlinuz-`uname -r` \
      --arch arm
      "

      dd if=/tmp/newkern of=/dev/mmcblk1p6

      Delete
  38. Install went smooth, Ubuntu boots up nicely from a Flash Drive. Unfortunately I get no network devices. No wifi at all. Series 5 550. Any suggestions or a fix?

    ReplyDelete
  39. Trying this on my cr48 with an 8gb USB drive, the script finishes fine, but ctrl+u does nothing at the sadface screen, no beep, nothing.

    I tried the vbutil command, and it gives this error:
    vbutil_kernel --verify /dev/sdb
    ERROR: key_block_size advances past the end of the blob

    I'd like to get this working, any tips?

    ReplyDelete
    Replies
    1. The CR-48 does not have the ability to boot off of external devices via Ctrl+U, it's firmware is not as advanced as the newer Chrome devices.

      Delete
    2. ah, thanks for the info, that wasn't really made clear in the original post.

      On a slightly related topic, I finally took the plunge and installed an alternative BIOS on my cr48 (insyde h2o). Although I can now boot other distros off of flashdrives, it seems it cant find anything too boot from off the internal ssd (I have not over-written anything). Any ideas as to how I can accomplish this?

      Thanks in advance for any tips!

      Delete
  40. I got 3G working with this on the ARM Chromebook, nice! Thanks very much.

    http://notes.variogr.am/post/39308314835/3g-wireless-in-ubuntu-on-your-arm-chromebook

    ReplyDelete
  41. Script is failing right away. I'm on a Series 5 550.

    I get a bunch of errors referring to 'can't open' /dev/mmcblk0

    Happens with multiple SD cards.

    Thoughts, anyone?

    TIA!

    -kj-

    ReplyDelete
  42. Would somebody be willing enough to make a video for those who are not as familiar with scripting and such on putting chrubuntu on their chromebook? please and thanks.

    ReplyDelete
    Replies
    1. will do. diffenately easier to learn form watching then reading

      Delete
  43. I am also having an issue with wifi. Like Kevin, Ubuntu reports "no network devices," and I also tried connecting via Ethernet, but nothing. I'm on a series 5 550.

    ReplyDelete
  44. Hello everyone! Anybody know if this process can be adapted to install Backtrack 5r3? It's based on Ubuntu and can be installed on both x86 and ARM devices. I would absolutely LOVE to turn the Acer C7 I have into a ultra portable pentesting solution.

    I wish there were someway this could be easily adapted to be used with other *nix based OS's a well.

    Any help is appreciated!

    ReplyDelete
  45. Hey guys, I've managed to fix the annoying touchpad issue on here...basically by copying over my X config from my Arch ARM install (which had a more completely working touchpad).

    The basic steps are (don't reboot till you're finished)

    Delete everything in /usr/share/X11/xorg.conf.d
    Download my pack of files: http://craigerrington.com/chrome/x_alarm_chrubuntu.zip
    Extract them all to the above folder.
    (optionally change the contents of /usr/share/X11/xorg.conf.d/10-keyboard.conf and swap the "gb" for your country code, such as "us"
    Reboot

    More details and step by step instructions have been posted as my very first blog post: http://craigerrington.com

    ReplyDelete
    Replies
    1. Sorry, to be clear, this fix is for the ARM Chromebook.

      Delete
    2. Thank you so much. Works like a charm!

      Delete
    3. Thanks for sharing! Haven't had a chance to try it out, but I can imagine having the touch pad sort of work would be annoying.

      A diff between the existing and your working could be good. That way we could just fix the problem upstream instead of blowing everything away. Unfortunately I don't understand xorg.conf's very well.

      Delete
    4. I'm trying to do it bit by bit to see what makes the major difference. It doesn't seem to be just the touchpad.conf file, as swapping it out stopped it working completely - I'll have some more time when I'm at work tomorrow..

      Delete
    5. Here's a diff for the whole /usr/share/X11/xorg.conf.d/ directory with this implemented.

      http://craigerrington.com/chrome/xorg_touchpad.diff

      Delete
  46. Seems the latest dev channel broke wifi/network in this build. Not sure how easy of a fix it is, any ideas? Or do we have to redownload from scratch when the next one comes out? Seems to have a lot of potential though. Great work so far.

    ReplyDelete
    Replies
    1. I'm guessing you mean an update in the co-installed ChromeOS. I ask because I had this working yesterday, but now my Ubuntu wifi won't stay connected for some reason.

      Delete
  47. My install seems to be working so far. The CTRL buttons are working well. I am trying to install GIMP, and am asked for the Ubuntu password. Is there a password that is in the installation? Thanks.

    ReplyDelete
    Replies
    1. I guessed: "user" and it seemed to work.

      Delete
    2. "user" is correct.

      You can change the password by typing "passwd" into a terminal.

      You could also create yourself a named login account and disable auto-login through through the settings menus if you like.

      Delete
  48. Happy this option was made available (USB flash drives and SD card). I finally am running Ubuntu/ChrUbuntu on my Samsung 5 550 Chromebook.

    Basic steps here (not all the details):
    flip the developer switch in the security port on the right.
    let it wipe the system and convert it to developer mode.
    when done hit control-d
    you should see the Chrome boot up logo and the setup screens. Go as far as connecting to your wireless network but don't log in. (I didn't do this initially and well it wont work, lol)
    At this point hit ctrl-alt-f2/> this will get you to a shell/terminal screen.
    type: chronos (no password)
    wget http://goo.gl/psvlk; sudo bash psvlk /dev/sdb (for me my sd card was /sdb)

    let the magic (lol) happen. When all is done reboot and hold ctrl-u and you're in ChrUbuntu.

    follow the steps posted above in the OP.

    ReplyDelete
  49. Works fine on my Samsung Chromebook 5/550

    ReplyDelete
  50. The only issue I'm seeing with this is ( Samsung Chromebook 5/550) that if I close the lid on the Chromebook or if I leave the chromebook sitting for a while (hours), when I come back, I'm unable to recover it into a usable state.

    The power button (upper right) stays illuminated, but I can't wake up the device. Has anyone else seen this?

    ReplyDelete
    Replies
    1. I am seeing this same issue on the Samsung Chromebook ARM (Series 3). It looks like this issue also existed in the original Alpha version of the Chrubuntu script. There was a comment there that it could be generated on demand using a terminal to invoke suspend or sleep (or something similar). Would be awesome to see a "fix" available or even if someone knows what command to run to prevent sleep/screen shutoff at all. I'm even looking for a "mouse" jiggle app to use.

      Delete
    2. I saw this once on my Series 3, but after updating Ubuntu it seems to have disappeared. Maybe the initial version from the installer has the bug, and it was fixed later?

      Delete
    3. I'll give the updates a shot - I also was able to resolve it by adjusting the power save and display settings so the display doesn't turn off. This works for me bc I only use Ubuntu for short spurts for specific work, just needed longer than the 15 min that was originally set somewhere.

      Delete
    4. On my "new" Samsung Chromebook Suspend works if I do it using the menu and wake it up by pressing the keyboard. If I do it by closing the lid, it never comes back when opening it again. The power-LED lights up, the screen backlight is turned on, but its completely black. I tried upgrading all packages, but then my mouse cursor disappeared... Anyone seeing the same or has any solutions ? I turned off the Screen Blackout / lock

      Delete
    5. Unknown - I experience the exact same symptoms. Suspend works manually (via menu command), which is really nice. I can leave it on my desk and it will sleep.

      - Closing the lid causes crash, device remains on until battery drained
      - Manually commanding suspend then trying to close the lid forces wake and crash

      Would love to see a fix - I'm really starting to love Chrubuntu, but this is almost a deal breaker since I'm on the go a lot. Thankfully with a fast SD card, booting is pretty darn quick, so I'll just turn it off each time for now until someone smarter than me works it out!

      Delete
    6. I agree.. This is a near deal breaker. Does anyone have any updates on this ? Joe, when you say you updated Ubuntu, you mean you applied all the updates ? (Not 12.10)

      Delete
  51. Is this incompatible with the original Samsung XE500 Chromebook?

    ReplyDelete
  52. Hi,

    I had this running last night, exited dev mode, then ran sudo crossystem dev_usb_boot=1 today to get the ctrl u button functioning again, but it is not working. Thoughts?

    ReplyDelete
    Replies
    1. i think you need to stay in developer mode then hit CTL U...also I think you only need the "crossystem" command when you are trying to boot from SD versus USB

      Paul

      Delete
    2. That is my understanding too. To boot an unsigned OS you must be in developer mode.

      And I read the crossystem command as letting you boot off an external drive (not SD card?) after installing it, then turning off and on again developer mode. I'm guessing the install script runs that command for you to enable external drive booting. But it gets reset after turning off developer mode.

      Delete
    3. Sorry, my post was not so clear. I exited developer mode, then returned to developer mode and ran sudo crossystem dev_usb_boot=1 when I returned, but cannot get back into Ubuntu. I am using an SD card so should the script be different? This was the one listed n the instructions above. thanks.

      Delete
  53. Hi, I have the Chrubuntu running on an ACER C7 via the USBstick but it is slow so I thought I would try the SD Card. I bought the 32G Extreme Pro San Disk and installed the SW on the SD Card. It took it's 10mins and loaded the SW but I cannot boot to the device. I have the original USB disconnected and I ran the 'sudo crossystem dev_boot_usb=1" but when I hit CTL+U I get a blank screen then a beep. Then it goes to the Chrome Logo and onto the normal Chromebook OS. I reboot and I plug in the USB stick, hit CTL+U and it works fine...just a bit slow. I was hoping the SD Card would be a little faster.
    Any ideas?
    Paul

    ReplyDelete
    Replies
    1. Maybe that setting should only be 1 for a USB drive, not for an SD card?

      Delete
    2. Joe, my understanding is the "sudo crossystem dev_boot_usb=1" is to enable both the SD Card and the USB for booting. I did try just for the fun of it without the "1" and it still did not work.
      I did see an error quickly when I was shutting down that was as follows:
      MMCO: error -110 whilst initializing SD Card
      So something is not working right but not sure what. When I boot into Chrubuntu I can see the files on the SD Card as well as when I boot into ChromeOS but it just won't boot. There is a "grub" directory on the SD Card so I assume it has all the right files.

      Any other thoughts. Sounds like I have the same problem as Kate. Has anyone successfully booted from the SD Card that maybe can help us?

      Paul

      Delete
    3. I'd meant to try "...=0" assuming 1 = true and 0 = false. But I may be totally wrong. Was just trying to offer options to test.

      My quick Google hasn't shown me the help page for crossystem I was hoping for, but https://sites.google.com/site/chromeoswikisite/home/what-s-new-in-dev-and-beta/shell-acess-with-verified-boot talks about setting the value to 0 when booting a verified OS. So it probably is not going to help.

      Delete
    4. Still trying to get my sd card working....
      I booted to the USB stick and ran

      tail -f /var/log/syslog

      I saw the following error when I plugged in the SD Card

      sdhci: Switching to 1.8V signalling voltage failed, retrying with S18R set to 0
      mmc0: error -110 whilst initialising SD card

      Anyone else seeing this? It is a 32GB Sandisk Extreme Pro SD Card

      Please advise
      Paul

      Delete
    5. I can't get the SSD cards to write from a dedicated ChrUbuntu install on the Acer C7 HD. I tried the built-in Backup application designated toward a 32G Patriot card and the entire system crashes everytime to where I have to do a hard reset. Trying to copy files through the File Manager to either a 32G Patriot or a 2G SanDisk causes the File Manager to hang. There's a serious problem with the SSD card support on the Acer C7.

      Delete
  54. May I suggest, for those wishing an SD card that doesn't stick out of the side of an ARM chromebook, a microSD card and something like this -

    http://www.ebay.co.uk/itm/181051556841?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1497.l2649

    You can then cut off the USB adaptor part with scissors, the card still works and it fits in the slot nicely. The door doesn't quite close, but nothing sticks out of the side any more.

    ReplyDelete
  55. I see that the CR-48 doesn't support booting from an external drive, but is there any (simple/noob-friendly, if possible) way to install as much of Chrubuntu as possible (or at least those portions most likely to "grow" as programs are installed and files are created) to an external HDD? I can't afford to buy a bigger SSD, but I have a 320GB external/USB HDD handy.

    ReplyDelete
  56. When I run wget http://goo.gl/34v87
    "It returns Cannot write to `34v87' (Read-only file system)."
    Any Ideas? I tried running it with sudo, but that didn't work either.

    ReplyDelete
    Replies
    1. You're probably in a Read Only location in your shell (probably / )

      try to change into your download directory first:

      cd /home/user/XXXXXXXXXX/Downloads

      (the XXXX will be a long string of numbers, type the first part of the command, cd /home/user/ then click Tab key and it'll comeplete the numbeer for you, then /Downloads)

      Then execute your command

      Delete
  57. Anyone had much look loading anything higher than 12.04?

    I briefly upgraded to 12.10 and pulled in marcins packages but it ran like treacle and I didn't have time or patients to fiddle.

    ReplyDelete
    Replies
    1. Easiest fix: before upgrading, install an alternative Desktop Environment, other than Ubuntu Unity... I recommend XFCE. (google the xubuntu-desktop package)

      The problem is that hardware acceleration isn't supported in either the fbdev driver, or the armsoc driver from Marcin's PPA..

      The new Unity interface from Ubuntu *requires* acceleration...So the fbdev driver simply fails, and Marcin's driver just runs as you describe..

      Delete
  58. This is brilliant. Thanks so much. A life-saver.

    ReplyDelete
  59. Acer C7 will not boot from an SD Card using Control-U, only a USB Stick. Jay Lee has not still refined his script. Running fsck -fy /dev/sdb7 reveals file and inode errors, which, when corrected, get past the black screen to a login prompt, where startx fails.

    ReplyDelete
    Replies
    1. I have an Acer C7 and I agree; is there a way to run ChruBuntu still without having to use the SSD?

      Delete
  60. Has anyone had luck getting dual displays to work using the Samsung ARM (Series 3)? The system seemed to be willing to "mirror" displays, but not extend or have proper "dual" displays. The mirrored displays also didn't seem to have the proper dimensions/resolution to show up right either.

    ReplyDelete
    Replies
    1. Try installing ARandR (sudo apt-get arandr)

      Then try running it and see how you get on... (I haven't tried it yet on the ARM, I will be today, but it's the easiest tool on other hardware)

      Delete
  61. Just got it to work on my new Samsung Chromebook.
    Love it!

    ReplyDelete
  62. Quick question (hopefully) about the lines "Note that if you exit developer mode after installing ChrUbuntu to an external drive, you'll need to rerun: sudo crossystem dev_usb_boot=1 to get USB CTRL+U booting working again."

    Is this command entered into the ChromeOS command prompt or ChrUbuntu's? From what I have read by exiting developer mode you would lose the ability to both boot into ChrUbuntu and access a ChromeOS command prompt. I am interested as I would like to keep receiving ChromeOS updates (which don't come when in developer mode if I understand correctly) while still being able to boot into ChrUbuntu from an SD card prepared with this method.

    ReplyDelete
  63. Running dual boot Chrome and Ubuntu on new Series 3 Samsung ... Thanks man....

    ReplyDelete
  64. Thanks. Works well on Samsung I got yesterday. My usual problems following directions but installed on 32 gb SD and fixed sound and touchpad in a couple of hours. Now if I could get nautilus-open-terminal functionality working (I have a script but miss the real thing).

    ReplyDelete
  65. Your distribution is FANTASTIC! Thank you SO MUCH for creating ChrUbuntu. I now have an Acer C7 upgraded to 8GB RAM and 240GB SSD booting in 12 seconds (from BIOS - CTRL-D) to full desktop and all my development tools on here! Having been to FOSDEM 2012 (alas will not be able to go this year) and seen a CoreBoot demonstration there - it was a dream to be able to get a laptop running OPEN SOURCE BIOS(!) instead of the dreaded UEFI.

    One thing that I am unable to find (as yet) are either kernel sources or kernel headers to the EXACT 3.4.0 ChromeOS kernel used for this hybrid so that I can install VirtualBox on the Acer. My ultimate aim is to have a 'blessed' kernel running directly from CoreBoot without any need for the ChromeOS bits at all - and I would love to help (you) achieve this (I do have kernel experience myself).

    Any links/hints? One last thing - I have got encrypted home directory/swap FILE and most other stuff working but cannot get Bluetooth to 'see' any devices or to get suspend working.

    Any hints?

    ReplyDelete
    Replies
    1. "One thing that I am unable to find (as yet) are either kernel sources or kernel headers to the EXACT 3.4.0 ChromeOS kernel used for this hybrid so that I can install VirtualBox on the Acer. My ultimate aim is to have a 'blessed' kernel running directly from CoreBoot without any need for the ChromeOS bits at all - and I would love to help (you) achieve this (I do have kernel experience myself)."
      This is extremely interesting, Mr. Unknown! Could you please share a link to your blog where you supposedly have a more detailed description of all the steps you have taken to put Chrubuntu on your Acer C7. I presume you didn't use SD card option.
      Thank you.

      Delete
    2. Just to let you know, the c7 has some hardware foibles that have kernel hacks in the chromeOS kernel. Stuff like the microphone jack being left floating, etc. I think the arm chromebooks have some binary blob drivers compiled against the chromeOS kernel as well, but I am not sure as I do not own one.

      Using the chromeOS kernel is probably the best way to run for now.

      Delete
  66. (John Cockroft) For some reason blogspot does not want to read my profile (GMail) - posts show as 'unknown' (for me) - sorry!

    ReplyDelete
  67. I tried this with 2 new usb flash drives and keep getting the Broken Pipe message. I also tried formatting the drive with the chromebook and when that didn't work, fat32 and get the same issue.

    Is there something I am doing wrong? I haven't worked out a solution reading the comments and a few others seem to have the same issue.

    In developer mode I ran:
    wget http://goo.gl/34v87; sudo bash 34v87 /dev/sda
    It runs for a while and then gets stuck at the broken pipe. So really don't know what I'm doing wrong.

    Any ideas?

    Thanks.

    ReplyDelete
  68. Hey, I posted some helpful .debs for the c7 on my blog at www.cisgendered.com

    There is a fixed acpid so you can open and close the lid without issue, virtualbox kernel modules built for the 3.4.0 chromeOS kernel, and a .deb that fixes the issue with the internal mike

    Hope they are helpful.

    ReplyDelete
  69. (Unknown) = (John Cockroft BTW)

    (Sophist's Delight) Thank you very much for writing these especially this one (http://www.cisgendered.com/?p=24) :)

    ReplyDelete
  70. (Sophist's Delight) The VirtualBox hack worked brilliantly (as did the Mic/ACPI fixes) :)

    ReplyDelete
    Replies
    1. Fixing acpid was the easiest of the three once I figured out what was causing it to flip out. I added two global variables in a c module and maybe 7 lines of really simple code to only actually process one lid event every second and ignore the rest (of the 15,000 the kernel was generating).

      The virtualbox kernel mods were a pain because there are no clear directions for how to get the kernel sources. The trick is you need to install the chromeOS sdk, chroot into the sdk, configure it for your board, enable the chromeOS kernel package, emerge the chromeos-kernel package, then symlink /usr/src/linux to emerge's working directory for the kernel. The final piece of the puzzle is the chromeOS kernel source tree has all kinds of relative symlinks in it, so you have to build any kernel modules INSIDE the chroot chromeOS sdk environment or it won't work.

      The mic was the toughest. Once I knew how to build the chromeOS kernel, and I had identified that a pin on the sound card had been left floating when the headphone jack was empty, I tried to make a fix in a module. My fix didn't work as you couldn't really fix it in a module. I saw that there had been a fix committed in the chromeOS-kernel GIT repository back in November for the microphone issues. That didn't make sense because normally production is finalized months before a product launches. I checked the compile date for the chromeOS kernel in *chromeOS* and it was compiled in like july or august. This confused me because the mic worked fine in chromeOS. I noticed that the mic jack worked appropriately using alsactl. This made me realize that a fix was already in the kernel. I had a stroke of genius and checked the alsa files in modprobe.d and found that the alsa modules were being passed an option to tell them they were running on a parrot, which if you pay attention to the warning screen at boot you will see that the hardware is called junglefowl-parrot. I put this option in the modprobe.d directory on chrubuntu and bingo, my mic worked.

      These are the kinds of hacks I like to do because I can't maintain interest for more than a few days, and I had a couple of days because my osteoarthritis has me sidelined right now. Can't even take a shower without a bath chair. It's kind of sad - I need a knee replacement and I am just 28.

      If you find anything else doesn't work, or you want source code, or maybe better directions for working with the chromeOS kernel let me know. My email address is keyvin - at - cisgendered.com.

      Delete
  71. the install script is stuck in a loop saying the binbm.bz is not correct...

    ReplyDelete
    Replies
    1. and when I reboot and start the script over, 5 or 6 of the downloads are found to be incorrect and redownloaded. This is the second time I've tried restarting it, are the files being changed or something?

      Delete
  72. Acer C7 Situation
    After recieving my Acer C7 I wanted to use an extended desktop and found the stable channel did not support this. I then siwtched to DEV Channel which supported extended monitors but crashed every 5 minutes and could not revert back to Stable at that point.
    I then found the option to add Ubuntu to the hard drive. I did this and it worked. I then saw that you could use the USB stick or SD Card. I had a 16GB USB Stick so loaded Chrubuntu on the USB stick and it appeared to work. I noticed some lag at times and Chrome Browser is extremely slow so I use Firefox which seems to respond ok. I ordered a 32GB SD Card to see if that might work better and also not have a 1" stick always hanging out of the unit especially when I am mobile. I installed Chrubuntu on the SD Card but it will not boot when I hit Ctl U.
    I now cannot get back to using the hard drive for some reason. With the SD Card out and the USB Stick out when I hit Ctl D it always goes to Chrome. Is that because once the USB stick was set up the bootloaders are only looking for the USB stick and not the harddrive or SD Card for Chrubuntu? If so how can I change this?

    So currently I can boot to ChromeOS in Dev Channel and use it for 5-10mins before it locks up or boot to Chrubuntu on the USB stick and deal with the stick hanging out and the slow performance of the Chrome Browser and the sometimes delays when accessing the internet as it looks like running off the USB stick is not always the fastest.

    Interested in my options
    1) Refresh the system back to factory? How can I get the hard drive back to factory state with the full 320gb drive supporting ChromeOS?

    2) Or is there some change I can make that will allow me to boot back to the Hard drive or try the SD Card

    Please advise
    Thanks
    Paul Ouellette

    ReplyDelete
  73. Paul, you can use cgpt to change what boots on your device. I don't know how your device is partitioned, but there is an ars technica article floating around that explains the cgpt tool. As far as restoring to factory, google has directions for how to do this, just google for "reset chromebook to factory settings" and you should find them.

    ReplyDelete
  74. Just my two cents...

    So I grabbed a Sammy ARM Chromebook and installed Chrubuntu on a 36GB Class 10 SD card and it went great. Thanks!

    However, in trying to set up a viable work environment, the ARM architecture was getting in my way (Oracle java and Crossover/Office were goals). Some of that will certainly be cleared up in the future.

    However, in the spirit of competition, I picked up a C7 as the Intel architecture and hard drive space is good for my mobile development and the previously mentioned items.

    The script worked great to install to a 16GB Class 10 Sandisk SD card, but upon rebooting, the boot loader ignored the cgpt setting and when trying CTRL+U I just get a quick black screen a beep and I'm back to the loader.

    So I installed Chrubuntu on a slow USB drive, but it worked. When inserting the class 10 SD card, the kernel whines about voltage levels and the partitions are not mounted.

    Thinking I was onto something, I ran the install to a Transcend 8GB class 6 microsd card that Chrubuntu "liked" and mounted when I was under the USB thumb drive.

    Alas, I have the same CTRL+U issue with the micro sd card as with the Class 10 SD card.

    I hear that the CR-48 has problems with CTRL+U booting to SD cards. Have there been many C7 reports? Any insight would be appreciated!

    ReplyDelete
  75. One more item - I can boot my class 6 microsd in a tiny USB card reader. Faster than the USB thumb drive, but would be nice to get the SD slot working. I googled around a little, but couldn't find info on log files that the boot loader might keep. Any ideas? Thanks!

    ReplyDelete
  76. Has anyone found a painless to slightly painful way to get Chromium on the ubuntu image ( yes the irony of installing Ubuntu on an SD card so that I can run chrome...on a Chromebook is not lost on me )?

    I just find Firefox so...pokey compared to Chrome.

    ReplyDelete
    Replies
    1. +Steven: I haven't had any problems with Chromium on Chrubuntu. I don't remember if I installed it with apt-get or the gui Software Center, but either way should work.

      Delete
    2. RobbH: Super! I was looking for 'chrome' and not 'chromium' or even 'chromium-browser'. Shoulda thought of that. Thanks.

      Delete
  77. Just wanted to say thanks for this awesome tool! I wouldn't have purchased a Chromebook if Linux wasn't a possibility. I enjoy Chrome's OS, but not enough to buy a new laptop.

    I'm currently installing Chrubuntu to an SD card and updating in real-time as I go (sort of a noob-friendly, let's do this together tutorial):

    http://www.whatthetech.info/installing-linux-chromebook/

    ReplyDelete
  78. Acer A7 with 8GB RAM and 240GB SSD + Chrubuntu is awesome! I have VirtualBox working on here (thanks to Sophist's Delight - (http://www.cisgendered.com/?p=24) virtualizing a development instance of Ubuntu (vanilla), Windows 7 and CentOS 6.x (but obviously only one at once - it is only a 1.1GHz chip!) + Eclipse development environments (including Talend ETL and SpringSource STS) and all the usual desktop stuff.

    Not bad for a Netbook supposed to be just a ChromeBook!

    ReplyDelete
  79. @John Cockroft:
    I would greatly appreciate details, that is detailed routine with corrections to Jay Lee's if any. I also suspect it's via USB drive, and not SD card. BTW, is something wrong in this stanza:
    "The 1st SD Card plugged into an x86 Chromebook will be /dev/mmcblk0"?
    There's no "2nd" SD card in C7, but could it be that the only SD card may have different designation, at least for booting from it?
    While I'd prefer to keep Chrbuntu/whatever off my HDD at this time, for experiments I'd rather have an SD boot than USB stick sticking out.
    Also, do any 2nd boot, kexec, etc. UEFI circumvention practices have any chances to succeed on C7? Anybody researches how to boot alternative/better 3.6/3.7 kernel that might be needed for Ubuntu 13.04?
    Thank you.

    ReplyDelete
  80. Tried this out yesterday on my Samsung 550 and loving it. Even installed Steam and played a few games on it. Only issue is when waking it from sleep mode it ends up back at the verification is off screen rather than resuming at the desktop. Other than that everything seems to be working great. Thanks so much for working on this!

    ReplyDelete
  81. Anyone who, like myself, has been wishing the Chromebook C7 had a Caps Lock LED light, I stumbled on this web page:

    http://maketecheasier.com/10-must-have-indicator-applets-for-ubuntu-12-04/2012/06/15

    Scroll down and check out the Key Lock Indicator. Just what I was hoping for. I installed it and it works as advertised. Ideal for anyone running Chrubuntu and doing any amount of typing.

    Just thought I would "share".

    Neil

    ReplyDelete
  82. Hi

    This is fab. It was so simple to get working and increases the value of my Arm Chromebook no end.

    I have just one problem. Like others have mentioned, I eventually left developer mode, then returned to developer mode, ran the crossystem script ... but failed to get back to Chrubuntu using the Control+U keys. Does anyone have any further thoughts on this other than going back to the original install process?

    Many thanks

    John

    ReplyDelete
    Replies
    1. John,

      I did the same thing but I was finally able to get Control+U to work though I'm not exactly sure why. I just tried "sudo crossystem dev_boot_usb=1" several times, rebooting and checking Control+U each time. Eventually, it just worked! I wish I had better information but really all I did was try that command multiple time. Note: as someone else mentioned "dev_usb_boot=1" does NOT work on the ARM Chromebook. You need to do "dev_boot_usb=1" instead. Hopefully this works for you!

      Now what I'm trying to tackle is getting my CAC/smartcard reader to work in ChrUbuntu. Firefox crashes as soon as I insert my smartcard.... driving me nuts.

      Delete
    2. This comment has been removed by the author.

      Delete
    3. David,

      Many thanks for that. It worked!

      In future, I'll probably stick in developer mode as booting is still pretty easy, but it's nice to know I have options for those occasions when you want to be back on normal mode.

      Most grateful for your advice.

      John

      Delete

  83. Acer C7 Parttition
    I tried installing Chrubuntu on my Acer C7 Hard drive and it worked until I also set up a USB Chrubuntu bootable drive, I thought the USB might boot faster but it didn't. I have tried numerous times to get back to booting Chrubuntu from the hard drive but it always goes to ChromeOS. i have tried the sudo crossystem dev_usb_boot=1 many times. Actually on my Acer i have to use sudo crossystem dev_boot_usb=1 or I get an error.

    I think I have corrupted the boot files or kernels or something, I tried looking at the drive from ChromeOS and it shows only the /dev/sda as 320GB.

    If I use sudo cgpt show /dev/sda after booting from my USB stick (See below for results)

    Can someone tell me if this looks normal or not? I think I may have tried to install chrubuntu too many times to the HD and SD Card and may have corrupted the files. I had set aside 298GB for Chrubuntu originally of the 320GB drive leaving 22GB for ChromeOs. Can I repartition/reformat the 298GB space and then reinstall Chrubuntu.
    I did not want to try that until I checked if that would work.

    start size part contents
    0 1 PMBR (Boot GUID: 1D788F42-C9EA-7548-8DD0-EB5994A86A6F)
    1 1 Pri GPT header
    2 32 Pri GPT table
    8671232 4034560 1 Label: "STATE" Type: Linux data UUID: FE2D4F56-3157-2A4B-9546-583885613178
    20480 32768 2 Label: "KERN-A" Type: ChromeOS kernel UUID: BEEA6E4B-4B5B-6542-B4BD-EC363F4759F9 Attr: priority=2 tries=0 successful=1
    4476928 4194304 3 Label: "ROOT-A" Type: ChromeOS rootfs UUID: E326B38B-5FBE-414C-9CB2-9EF2F2A15067
    53248 32768 4 Label: "KERN-B" Type: ChromeOS kernel UUID: D08B32A8-CD27-9E41-A6BD-C8F42C814381 Attr: priority=1 tries=0 successful=1
    282624 4194304 5 Label: "ROOT-B" Type: ChromeOS rootfs UUID: 1D5D8F8C-8072-E044-81F9-EF53B33697BB
    12705792 32768 6 Label: "KERN-C" Type: ChromeOS kernel UUID: 76EA1DDD-6ED7-6B4E-BC72-F4AEAFCFA56A Attr: priority=0 tries=15 successful=0
    12738560 612368384 7 Label: "ROOT-C" Type: ChromeOS rootfs UUID: 75673E64-2DF1-4546-9FA5-19BDDC5FC421
    86016 32768 8 Label: "OEM" Type: Linux data UUID: EFA49F74-AC93-E049-AB36-6341C4336A69 16450 1 9 Label: "reserved" Type: ChromeOS reserved UUID: 6D66C548-E572-1D4F-B39C-CAC8BBBDDC82
    16451 1 10 Label: "reserved" Type: ChromeOS reserved UUID: 3E22880C-FBBD-BD40-B74C-3C419E73085A
    64 16384 11 Label: "RWFW" Type: ChromeOS firmware UUID: 8F95A798-F379-3249-A03A-02759F6132D1
    249856 32768 12 Label: "EFI-SYSTEM" Type: EFI System Partition UUID: 1D788F42-C9EA-7548-8DD0-EB5994A86A6F
    625142415 32 Sec GPT table 625142447 1 Sec GPT header


    Thanks Paul

    ReplyDelete
  84. I'm having an issue where I can't do updates:
    Failed to fetch http://ports.ubuntu.com/ubuntu-ports/pool/main/a/activity-log-manager/activity-log-manager-control-center_0.9.4-0ubuntu3.1_armhf.deb 404 Not Found
    Failed to fetch http://ports.ubuntu.com/ubuntu-ports/pool/main/a/activity-log-manager/activity-log-manager-common_0.9.4-0ubuntu3.1_all.deb 404 Not Found

    Any help here with that?

    Also, I'd like to be able to create my own user, without the autologin user but Gnome-Control-Center seems to crash when I click on user.

    Any help with that either?

    ReplyDelete
  85. I posted this embedded in a reply so I wanted to break it out to hopefully catch some more action. I have ChrUbuntu running great (though a little slowly) on a thumbdrive. I'm trying to use ChrUbuntu to be able to use my CAC (smartcard) reader since it doesn't work in ChromeOS. I downloaded the utilities required and got the source code for cackey through forge.mil and compiled it myself. I added the necessary add-on to firefox and it looks like everything is working but as soon as I put the ID card in the reader, firefox crashes. I've tried everything I can think of. Has anyone else attempted this? This hurdle is the only thing preventing me from selling my windows laptop.

    ReplyDelete
  86. I have an Acer C7 in development mode and have run the command to boot from Ctrl-U. I've run the tnyga script on an 8GB class 10 sd card and a 16GB class 10 sd card and, even though the script completes with no errors, I can't boot with Ctrl-U, it just beeps and then boots ChromeOS. I noticed this statement above:

    "fjs January 6, 2013 at 6:15 PM
    Acer C7 will not boot from an SD Card using Control-U, only a USB Stick."

    If this is true it would explain my problems. Has anyone been able to boot the Acer C7 from an sd card?

    ReplyDelete
    Replies
    1. No, I haven't been able to boot from SD card, either with this script, or so called "Crouton" script. Went HDD way: http://fineoils.blogspot.com

      I believe it's a Chrome OS or Acer "feature". Or both conspired somehow to fiddle with UEFI.

      Delete
  87. I installed fine except when i try to download/install anything such as flash or chromium browser Ubuntu requires me to authorize with a password. I have never set any passwords or know of any defaults?? any thoughts??

    ReplyDelete
  88. Hi

    I think the password is "user" (without the quotation marks!)

    Give a try anyway.

    ReplyDelete
  89. Thank you Jay et. al. for all the great work. I am now able to run Chrubuntu 12.04 from a bootable external SD card on a Samsung ARM Chromebook. With the help of this and other sites, I have fixed a bunch of issues. But I have a few left that I am stuck on:

    1) Driving my external 1920x1080 monitor via the HDMI port.
    When running ChromeOS, I can use this monitor without any problems, and I can see it in the xrandr output as HDMI-1. When running Chrubuntu, it does not get driven properly (wrong resolution or no output, depending on the plugging-in and boot order) and I can't control it because xrandr does not seem to know it is there. I think I know how to use xrandr commands to configure it, but only "default" monitor shows up on the xrandr output. I think there must be a config file or script somewhere to set all this up, but I have not found it, and have not found the equivalent in the ChromeOS.

    2) Installing google talk plugins in Chromium-browser.
    I have been able to install pepper flash plugin by copying the pepper flash plugin from ChromeOS and following instructions here (http://www.webupd8.org/2012/09/how-to-make-chromium-use-flash-player.html) and it works well. I also can find the two google talk plugins used in ChromeOS in the same directory as the pepper flash plugin. You can see where by loading the chrome://plugins page while in ChromeOS. But I don't know how to get these to actually work. If I put them in another plugins directory that looks like it is loaded by Chromium, they do show up on the chrome://plugins/ page, but they have less info than on the ChromeOS plugins page, and when I try to use google talk I am told I still need to install them. I don't think there is an analogous process for the google talk plugins to what is being done for pepper flash, since one can see the command line call for the browser on the ChromeOS chrome://version/ page, and there doesn't seem to be an analogous set of flags. Does anyone know the process to install these plugins?

    3) Upgrading to 12.10.
    When attempting to upgrade to 12.10 I get warned not to proceed due to a graphics hardware acceleration issue. Is there currently a way around this? Also, aside from the more general Ubuntu improvements in 12.10, would I expect some of the specific Chrubuntu and ARM issues to be fixed in the new version, or will that have to come along by another process anyway?

    Does anyone have insights on these topics?

    Thanks again.

    ReplyDelete
  90. I think I fixed the touchpad issues. All it takes is one line in Terminal

    xinput set-prop "Cypress APA Trackpad (cyapa)" "Synaptics Finger" 15 20 256

    This sets the sensitivity of finger presses for the touchpad to a lower amount, that seems to be much better in testing. default is 30 50 256 iirc. You can use

    xinput list-props "Cypress APA Trackpad (cyapa)" |grep -i finger

    to see your current settings before making changes. I also changed the minimum, maximum, and acceleration speed in gpointing-device-settings, but the touchpad sensitivity fixed the actual touchpad issues.

    ReplyDelete
    Replies
    1. Thanks Seth. You got me looking around and Ifound a related command:
      xinput --set-prop --type=int --format=8 "Cypress APA Trackpad (cyapa)" "Synaptics Two-Finger Scrolling" 1 1
      which got 2 finger scrolling working. Note I'm not using your sensitivity solution, having already had success with:
      synclient FingerLow=4
      and
      synclient FingerHigh=10
      so I'm not sure how these all play together.

      Delete
  91. For some reason it seems I can't download from the Ubuntu Software centre, or the terminal for that matter. It just fails to grab the files, but the WiFi works perfectly fine. Anyone know why this is?

    ReplyDelete
  92. As Maroger I haven't been able to boot from my 32 GB SD card
    in my Acer C710 Chromebook loaded with the Lee's script in developer mode with UBUNTU 11... booting perfectly on an other
    ACER X1430 desktop under UEFI with choosing F12.
    lsblk I grep disk shows sda and mmcblk0 on my Chromebook and
    after starting Parrot updater, booting from SDCard slot is ENABLED; press CTRL+U in developer mode screen to boot your own
    image is perhaps cynique ! the end is allways Chrome OS !
    Mr Lee please help me ...

    ReplyDelete
  93. Anyone else run into an issue where the script causes a hard reboot while it is downloading the files? I'm on dev channel with an ARM based Chromebook.

    ReplyDelete
  94. Installed perfectly and ran nicely, until it wouldn't boot past a blank screen. This has happened twice now. After the first time I formatted the SD card and started over. The install goes smoothly, I can reboot a few times (for maybe a week) then (seemingly randomly) I can't boot into Ubuntu any more; it stalls at a blank screen with no mouse pointer or command prompt. Any ideas?

    ReplyDelete
  95. If my SSD on a cr-48 is toast.. Is there any way to run this? My crOS recovery only works on the existing SSD, as far as I know. If I had a traditional bios like insyde h2o.. I could run this off a USB stick. I might be pretty much bricked, unless I replace SSD.

    ReplyDelete
  96. All,

    I just want to say that my stock C7 Chromebook with 2Gb RAM and 5400 sata drive is performing quite nicely under Chrubuntu. I have been tempted a few times to break the seal and add memory, and even migrate to SSD, but truthfully the boot up time is quite reasonable, even when I don't use suspend.

    For anyone curious, my configuration includes fixes as published on this blog:

    Microphone fix
    ACPI fix
    Touchpad fix
    Virtualbox fix (Win XP runs just fine, thank you)
    2 Gb swapfile (although it doesn't get used much)
    Indicator-Keylock (displays balloon notification when caps-lock is pressed, since there is no Caps Lock LED light)
    Preload, which is similar to Windows prefetch. For my stock setup, it seems to speed up the launching of my two most used apps, Firefox and Thunderbird. sudo apt-get install preload (or use ubuntu software center). I'm mostly tethered to my power cord, so don't use my C7 on battery very often, but I'm wondering if Preload might actually improve battery life by caching more frequently to RAM and thus reducing hits to rotating memory.

    With the System Monitor applet in my task bar, I can see that with preload, 30% of RAM is in use by programs and 45% by cache. So I still have "headroom" and my swapfile is empty. And that's without even lowering the "swappiness" value. I don't see eventually needing much more than 4Gb of RAM (2Gb extra), to open up dual-channel RAM capability and provide a little headroom and allow me to instantiate a 2Gb virtual XP machine. Presently I am keeping my VirtualBox XP machine at 768K. But I don't use it that much, just when I need the real-deal Internet Explorer for some secure sites and changing the user-agent string in Firefox will not do.

    Thanks again to Jay, Kevin, Randal, and other contributors to this blog. My only wish is that there would be a way to control display of the blog so that most recent posts display first. Does anyone know if this can be done?

    -Neil

    ReplyDelete
  97. Before I jack this up... this will be my first foray into Linux in *any* form. All I have is a chromebook, so naturally this is my only current option for trying Linux out... is it possible to perform all of these steps, such as formatting and loading the SD from within the ChromeOS? I notice the steps involve Linux commands like wget. Again, I'm pretty ignorant and will definitely keep searching, but this is all pretty new stuff even for you Linux vets, so any help is appreciated.

    ReplyDelete
    Replies
    1. And look at that... I answered my own question with a little more searching. For everyone else's benefit, here's a google site that quotes all of the above scripting instructions in more detail to be able to do this solely from within the chromebook it looks like.

      https://sites.google.com/site/chromeoswikisite/home/what-s-new-in-dev-and-beta/developer-mode

      Delete
    2. Actually, that's for a different version, but it does clarify some things and has links to other helpful aspects regarding the Chromebook.

      Delete
  98. Is there a limitation in size for the SD card or the external USB flash drive?

    I currently have ChrUbuntu installed on my Acer C7 directly onto the hard drive, but my shortcuts for terminal and file manager are no longer working. I was hoping to get a large enough external media just for ChrUbuntu and hopefully the shortcut keys will work in ChromeOS.

    ReplyDelete
  99. turning up the sensitivity of the trackpad/touchpad in ubuntu completely resolved the problem i had of the pointer not moving often. wow. the default setting just makes the whole thing feel broken so badly. so sad that is the default.

    ReplyDelete
  100. i wish i knew how to install 32 bit ubuntu, however. 64 bit has too many problems for my line of work.

    ReplyDelete
  101. hi! are there any instructions about how to get ubuntu set up for a chromebook? i would seriously like to make my own 32 bit version instead of 64.

    ReplyDelete
  102. Just did this on an ARM Chromebook. Worked perfectly. Thanks.

    ReplyDelete
  103. Not sure what I am doing wrong, but I can't get ChrUbuntu to book on my Acer C7. I am able to run the script and install ChrUbuntu to the SD card, but when I try to boot using Control+U I get a single beep. The only option I can use is Control+D and boot to ChromeOS. Any suggestions?

    ReplyDelete
    Replies
    1. Forgot to add, I am able to get ChrUbuntu to boot from the internal HD, but just not the SD card.

      Delete
  104. If I leave developer mode, is there a way after returning to developer mode to return to "reactivate" ChrUbuntu on the SD card or do I have to do a reinstall, including the download?

    Thanks

    ReplyDelete
  105. Never mind. Found the crossystem command above. Works fine.

    ReplyDelete