Terminaとcrostiniを確認する
まずは、croshに(ctrl + alt + t)入ります。Termina VMに入りたいので、何かLinuxアプリを立ち上げます。標準のLinuxターミナルなどでOKです。
Linuxアプリが立ち上がったら、Termina VMが起動しているはずなので、croshからTermina VMに入ります。
crosh > vsh termina
(termina) chronos@localhost ~ $
現在起動しているコンテナを確認します。
(termina) chronos@localhost ~ $ lxc list
+-------------+---------+------------------------------+----------------------------------------------+------------+-----------+
| NAME | STATE | IPV4 |
IPV6 | TYPE | SNAPSHOTS |
+-------------+---------+------------------------------+----------------------------------------------+------------+-----------+
| penguin | RUNNING | 172.18.0.1 (br-a12532f1f662) |
240b:c010:420:c15a:216:3eff:fe26:6288 (eth0) | PERSISTENT | 0
|
| | | 172.17.0.1 (docker0) |
| | |
| | | 100.115.92.201 (eth0) |
| | |
+-------------+---------+------------------------------+----------------------------------------------+------------+-----------+
penguinという名前のコンテナがあることが確認できます。これがcrostiniコンテナですね。
ubuntuコンテナを追加してみる
lxcコマンドからubuntuコンテナを追加してみます。
(termina) chronos@localhost ~ $ lxc launch ubuntu:18.04
Creating the container
Container name is: sought-foal
Starting sought-foal
追加できました。sought-foalというコンテナ名で起動しているようです。
一覧で確認してみます。
(termina) chronos@localhost ~ $ lxc list
+-------------+---------+------------------------------+----------------------------------------------+------------+-----------+
| NAME | STATE | IPV4 |
IPV6 | TYPE | SNAPSHOTS |
+-------------+---------+------------------------------+----------------------------------------------+------------+-----------+
| penguin | RUNNING | 172.18.0.1 (br-a12532f1f662) |
240b:c010:420:c15a:216:3eff:fe26:6288 (eth0) | PERSISTENT | 0
|
| | | 172.17.0.1 (docker0) |
| | |
| | | 100.115.92.201 (eth0) |
| | |
+-------------+---------+------------------------------+----------------------------------------------+------------+-----------+
| sought-foal | RUNNING | |
240b:c010:420:c15a:216:3eff:fef2:348b (eth0) | PERSISTENT | 0
|
+-------------+---------+------------------------------+----------------------------------------------+------------+-----------+
sought-foalが「RUNNING」になっていますね。
続いて、作成したUbuntuコンテナに入ってみます。「lxc exec コンテナ名 bash」でコンテナにbashで入れます。
(termina) chronos@localhost ~ $ lxc exec sought-foal bash
root@sought-foal:~#
入れました。
OS情報を確認してみましょう。
root@sought-foal:~# cat /etc/os-release
NAME="Ubuntu"
VERSION="18.04.5 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.5 LTS"
VERSION_ID="18.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic
Ubuntu 18.04が入っていますね。ここからは普通のUbuntuサーバーと同じようにカスタマイズが出来ます。
コンテナを起動した段階で、ネットワーキングもされているので、aptコマンドでインターネット経由でインストール・アップデートをしたり、ChromeOS標準のcrostiniコンテナから、作成したSSHでログインすることも可能です(要ユーザー設定)。
また、中身をみてみると、Google Driveがマウントされているなど、Chrome OSとの連携もされていました。
コンテナを起動・シャットダウンする
コンテナを起動・シャットダウンなどの操作は、「lxc + 操作 + コンテナ名」で行えます。
lxc stop sought-foal
lxc start sought-foal
複数仮想マシンを起動しているのに近い
起動できるコンテナ数は、システムが許容できる範囲であれば幾つでもコンテナを同時起動できるため、複数仮想マシンを起動しているのとほぼ同じ環境をChromebookで実現できます。
ChromebookにはVirtualboxなどの仮想マシンアプリケーションをインストール出来ないため、プログラミングなど開発環境としてChromebookを本格的に使いたい方には嬉しい使い方ではないでしょうか。
ChromebookのLinux環境で複数コンテナを実行する方法を見てきました。
誰でも簡単に使えるようになっているChromebookのLinux環境ですが、専門的な知識があればもっと深い使い方が出来ますね。