[LINUX] A story about remodeling Lubuntu into a Chromebook


(Updated on December 18, 2019, updated because the construction was completed)

This is the article on the 17th day of NISE (Aoyama Laboratory, Nanzan University) Advent Calender 2019.

I am in charge of the Advent calendar for two consecutive days, but let's do our best.

Well, yesterday I used Google Colaboratory to read the files in Drive. https://qiita.com/RomuskaPaloUrLaputa/items/e3149ecaaba7d081eb89

I introduced it as a fairly versatile one that can be used not only for machine learning but also for running light Python programs, but I can only use python. It would be better to have a local environment to touch other languages. ~~ (Where did the guy who was having trouble building yesterday go) ~~

If you feel free to develop anywhere, it's a pain to always carry a laptop with you.

…… There is a Chromebook. Instead of using only Chrome as a browser, it is as lightweight and cheap as an ultrabook, and the OS (Chrome OS) is also lightweight and operates as a crispy god terminal.

The OS is built on linux. In other words, you can install VS Code and Atom if you modify it a little.

So, I would like to remodel the magic immediately.


Model: acer cb3-111 RAM : 2GB CPU : Intel(R) Celeron(R) CPU N2840 @ 2.16GHz ROM : 16GB(e-MMC)

1. Switch to developer mode

As a preliminary preparation, you need to switch the OS mode to developer mode.

Chrome OS usually runs on a channel called "stable". If you stay on this channel, you will not be able to open linux shell commands. Therefore, switch to the developer mode where you can play around with it.

Screenshot 2019-12-16 at 22.23.14.png

There are several ways to do it, but I'll show you how to succeed.

Switch with command while initializing

First, press ʻesc+reload (round and round mark) or F3` + power button at the same time

IMGScreenshot 2019-12-17 at 22.35.00.png_5077.JPG

Then, a warning like "Is it okay if the data disappears?" Appears like this. In fact, the data in the local file will be blown away, so make a backup.

Next, on this screen, press ctrl + d at the same time. Then, switching to developer mode will start.

On the next screen, the message "OS confirmation function is turned off" will appear, but ignore it and press the enter key. (The mode switching failed once because the confirmation function was turned on here)


If you see a screen like this, it's OK.

Initialize the initialized Chrome OS

It's like setting up WiFi normally and logging in to Google. I don't think there is any need for explanation here. Follow the instructions on your Chromebook.

2. Download crouton

Then download croutons.

crouton is software that allows you to place a container on ChromeOS and use ubuntu and Debian in a virtual environment. (I'm sorry if the explanation is different)

You can download it by jumping to github below. https://github.com/dnschneid/crouton

In addition, you can download the latest version of croutons by jumping to the URL in Usage.

Below, we will assume that crouton is in the directory download.

Launch the shell

First, press ctrl + ʻalt + t` at the same time to start the Chrome OS terminal called chrosh. It feels like the same command as when starting a terminal on linux ...

Screenshot 2019-12-18 at 12.41.19.png

This screen will appear.

By typing shell, you will be able to use it like a normal linux terminal.

3. OS installation

Basically, you can install two types of OS, Ubuntu and Debian. I don't know much about Debian, so this time I will install Lubuntu, which is an Ubuntu-based OS.

What is Lubuntu

In a nutshell, it's a lighter version of Ubuntu. Ubuntu uses Unity for the desktop environment, but Lubuntu uses LXDE. This allows you to devote machine resources to other than OS operation from Ubuntu.

Since the Chromebook used this time has a lot of machine resources in the first place, it may not work unless the OS is as light as possible, so install Lubuntu.

Ubuntu OS that can be installed

With shell 'sudo sh ~/Downloads/crouton -r list' You can find out which version of Ubuntu you can currently install by typing.

Recognized debian releases:
    potato! woody! sarge! etch! lenny! squeeze! wheezy! jessie stretch buster
    bullseye sid
Recognized kali releases:
    moto! kali! sana! kali-rolling
Recognized ubuntu releases:
    warty! hoary! breezy! dapper! edgy! feisty! gutsy! hardy! intrepid! jaunty!
    karmic! lucid! maverick! natty! oneiric! precise! quantal! raring! saucy!
    trusty! utopic! vivid! wily! xenial yakkety! zesty! artful! bionic* cosmic!
    disco* eoan*
Releases marked with ! are upstream end-of-life, and should be avoided.
Releases marked with * are unsupported, but may work with some effort.

As of December 17, 2019, you can see that xenial (16.04LTS) is the only Ubuntu that can be installed (successfully).

further, sudo sh ~/Downloads/crouton -t list You can see additional options for the installation by typing.

You can also see the available desktop environment here, and now

GNOME(Ubuntu GNOME), KDE(Kubuntu), LXDE(Lubuntu), Unity(Ubuntu), xfce(Xubuntu)

5 are available.

Install command

principle, Sudo sh crouton directory -r OS you want to install -t option You can install it with.

I wanted at least something that could be used in a desktop environment sudo sh ~/Downloads/crouton -r xenial -t lxde-desktop,keyboard,audio,extension,chrome It was made.

The meaning of each option is sudo sh ~ / Downloads / crouton -t list In can be confirmed.

The installation itself takes about an hour, so be patient.

You will also be prompted for the primary user's username and password at the end of the installation.

4. Start up

Let's start immediately after the installation is completed.

For Lubuntu, in shell sudo startlxde Enter to start.

When I touched it for about 5 minutes, it moved smoothly as it was.

The environment construction after that is the same as normal linux, so let's create the environment you like.

at the end

The latest Chromebooks can be built with the official virtual environment construction software called "Project Crostini", but older Chromebooks are not compatible at all.

By using crouton, you can poke Linux even on older Chromebooks.

I'm going to do a lot of environment construction.

p.s It was impossible to finish everything from Shinagawa to Nagoya on the Shinkansen. Please forgive me…


[Complete version] How to build a development environment by putting Linux in a Chromebook Put Ubuntu on the SD card of ChromeBook (C201 and cb3-111-C670) Building an Xubuntu environment on a ChromeBook using Crouton Story of putting Xubuntu in Chromebook with Crouton and working with VS Code and Minecraft

Recommended Posts

A story about remodeling Lubuntu into a Chromebook
A refreshing story about Python's Slice
A sloppy story about Python's Slice
A story about using Python's reduce
A story about machine learning with Kyasuket
A story about Python pop and append
A story about a 503 error on Heroku open
A story about simple machine learning using TensorFlow
A story about operating a GCP instance from Discord
A story about Go's global variables and scope
A story about displaying article-linked ads on Jubatus
A story about implementing a login screen with django
A story about running Python on PHP on Heroku
A story about modifying Python and adding functions
A story about data analysis by machine learning
A story about making 3D space recognition with Python
A story about using Resona's software token with 1Password
A story about predicting exchange rates with Deep Learning
A story about migrating entire Linux disk via SSH
A story about making Hanon-like sheet music with Python
A story about trying a (Golang +) Python monorepo with Bazel
A story about kindergartens, nursery schools, and children's gardens
A story about reflecting Discord activity in Slack Status
A story about struggling to loop 3 million ID data
A story about how theano was moved with TSUBAME 2.0
A story about changing the master name of BlueZ
A story about a Linux beginner passing LPIC101 in a week
A story about a Linux beginner putting Linux on a Windows tablet
A story about stumbling through PATH after installing anaconda
A memorandum about matplotlib
A memorandum about Nan.
A note about __call__
A note about subprocess
A note about mprotect (2)
[Linux] A story about mounting a NAS through a firewall using NFS
A story about creating a UNIX / Linux compatible OS from scratch
A story about how to specify a relative path in python.
A story about competing with a friend in Othello AI Preparation
A story about installing matplotlib using pip with an error
A little deeper story about blockchain, ticking the digital world
A story about an amateur making a breakout with python (kivy) ②
A story about how to deal with the CORS problem
A story about an amateur making a breakout with python (kivy) ①
A story about a war when two newcomers developed an app
A story about making a tanka by chance with Sudachi Py
A story about clustering time series data of foreign exchange
A story about a 40-year-old engineer manager passing "Deep Learning for ENGINEER"
A story about trying to implement a private variable in Python.
A story about a tragedy happening by exchanging commands in chat
A story about a GCP beginner building a Minecraft server on GCE
A story about a python beginner stuck with No module named'http.server'
[Python] A story that seemed to fall into a rounding trap