Installing Ubuntu 16.04 on an Asus CN60 Chromebox
Installing Ubuntu 16.04 on an Asus CN60 Chromebox

Get the kodi install script

cd; curl -L -O https://mrchromebox.tech/setup-kodi.sh && sudo bash setup-kodi.sh

Pick the option to install the Custom UEFI Firmware

Backup your firmware when prompted, using a USB drive

Create a USB boot disk for Ubuntu 16.04. I like using Etcher

Put in the USB drive and reboot

Pick the Install Ubuntu option and install as normal.

On the partitioning page, pick the LVM option, so you can expand the root disk easily later.

After selecting partitioning layout (I chose automatic), you may be prompted to continue in UEFI mode. Do this, continue in UEFI mode.

Now, you'll probably be stuck in EFI mode. Also, my keyboard (an Apple USB keyboard) wasn't working, so I had to go find another. If you're at the EFI promot, type 'exit' to return to the UEFI settings menu, then select Boot Maintenance Manager. From there, select Boot From File.

I then picked the first option and navigated through the prompts till I found the grubx64.efi file. Choose that and Ubuntu will boot.

Once you're into ubuntu, you can copy the .efi boot file to the right location with:

sudo su
mkdir -p /boot/efi/EFI/BOOT
cp /boot/efi/EFI/ubuntu/grubx64.efi /boot/efi/EFI/BOOT/BOOTX64.efi

Then reboot. For some reason I had to hard-shutdown the first time, but after that, everything was golden.

Extend root partition to the SDCard

Note: doing this means the computer won't boot without the SDCard

Plug in the SDCard

Use fdisk -l to find the SDCard /dev/ name, then run fdisk /dev/sdb or whatever the name of your device is.

In fdisk:

d # delete the primary partition
n # create a new partition
p # primary
# use the defaults to fill the disk
t # choose the type
8e # for lvm
w # write the changes

If you get an error message, eject it, put it back in and try again

Now extend the disk with:

pvcreate /dev/sdb1 # to create a logical disk
vgextend ubuntu-vg /dev/sdb1 # to extend the volume group
vgdisplay # to figure out how much free space is left, copy the first integer in the `Free PE / SIZE` field
lvextend -l +15263 /dev/ubuntu-vg/root # where 15263 is the Free PE value
resize2fs /dev/ubuntu-vg/root # to resize the filesystem

Done. Don't try to boot your computer without the SDCard plugged in. It won't work :)

Going back to ChromeOS

Boot to a live linux CD or use your linux install and open a terminal

Download and run the firmware util:

curl -L -O https://mrchromebox.tech/firmware-util.sh && sudo bash firmware-util.sh

Select option 9 -> Restore Stock Firmware (Full)

Say no, unless you have the backup still and choose 1 for the Asus CN60 firmware

per the guide here: http://kodi.wiki/view/Chromebox#ResettingtoStock

Developer mode

enables ssh, set a password here when prompted

VT2

On the login page, press CTRL + ALT + F2

use the login root with the password you configured in development mode

as suggested, run the chromeos-setdevpasswd as suggested and set the chronos root password

Hit the escape sequence CTRL + ALT + F1 and you'll be back at the login screen

crosh

Login to the chromebox and hit CTRL + ALT + t to get a crosh shell

now run shell to get into bash and you can sudo with the password you set with the chromeos-setdevpasswd command, above

Hope this was helpful. If so, feel free to checkout my YouTube channel, get updates when a new article is posted by following on Feedly and read the the other guides at nathan.vertile.com/blog
comments powered by Disqus