カテゴリー: 開発者向け

Chrome OSのLinux環境・crostiniとは何か?

ChromebookでLinuxアプリが使える、Chrome OSのLinux環境・crostiniとは何か。Linux環境が動く仕組みとcrostiniの良さについてまとめました。

crostiniはTermina VMで稼働するコンテナ環境&サポート機能の総称

仮想マシンを使ったことがある方なら、crostini自体が仮想マシンと思うかもしれませんが、実際にはChrome OS上で稼働する「Termina VM」呼ばれる仮想マシンの中のコンテナ環境とそれらをChrome OSで簡単に利用できるサポート機能の総称です。

Termina VMでは、Linux containersで稼働しているため「lxc」コマンドでコンテナの追加や起動、コンテナイメージのエクスポートなど様々なことが出来ます。非公式ですが、Ubuntuコンテナの追加も可能です。

lxc | Linux containers

これを仮装マシンなどの知識がない人でも、Chrome OSの設定画面から簡単に「コンテナ環境の作成・起動・Chrome OSとの連携」などを出来るようにしたのがcrostiniです。

Chrome OSのLinux環境・crostiniが立ち上がるまで

Chromebookにログインした段階で、Linuxアプリが起動していなければTermina VMは起動しません。

Linuxアプリを立ち上げた段階で、

  1. Termina VMの起動
  2. Crosiniコンテナの起動
  3. Linuxアプリの起動

という順番でアプリを起動します。一度Linuxアプリが起動してしまえば、1〜2のフローが飛ばされるため、新しいLinuxアプリを起動する際は高速にアプリが起動します。

Linux環境・crostiniとChrome OSの統合

Chrome OSのLinux環境・crostiniはコンテナ環境なのですが、通常のコンテナと違うのが、

  • Chrome OSとOSレベルで統合
  • Chrome OSからGUIで操作
  • Chrome OSからコンテナ内のアプリを操作

出来る様にしている点です。

実は仮想マシンの代替としても使える

Linux環境・crostini自体の話ではないのですが、crostinicrostiniコンテナを実行している仮装環境Termina VM自体は、Linux containersで稼働しているため、複数のコンテナやcrostiniとは違うOSのコンテナを実行することが可能です。

つまり、WindowsやmacOSでVirtualboxなどの仮想マシンを使う感覚で、複数の仮想マシンが欲しいという場合は、lxcコマンドからコンテナを追加すれば、複数の仮想マシンを実行するのと近い環境を作ることができます。

ただし、通常用途であれば、素直にcrostiniを使うのがベストです。


Chrome OSのLinux環境・crostiniについて見てきました。

実際に動いている仕組みは複雑ですが、これをGUIで簡単に操作できるようにしているのがLinux環境・crostiniのすごいところですね。まだベータ版なので、このまま進化してどんどん使いやすくなってくれると、プログラミング環境として成熟していきそうです。

開発者向けの記事

完全無料!Chromebookで開発するなら入れておきたいオススメアプリ

格安でマシンスペックもそこそこなので、Chromebookを開発マシンにしたいという方は意外と多いかと思います。そんな「Chromebookを開発マシンにしたい」または「開発マシンとしてChromebookを検討しているけど本当に使えるのか不安」という方に向けて、Chromebookの開発向けオススメアプリを無料のものだけでピックアップしました。

完全無料!Chromebookで開発するなら入れておきたいオススメアプリ の続きを読む

Chromebookでローカルサーバーを立てる

Chromebookで開発するにもプログラミングの勉強をするにも、ローカルサーバがあると何かと便利です。今回は、Chromebookでローカルサーバーを立てる方法をまとめました。専門知識が不要な方法から、高度な設定が出来る専門的なサーバーまで広くピックアップしています。

Chromebookでローカルサーバーを立てる の続きを読む

Web・アプリなどのプログラミング開発機にChromebookを使う際の選び方

最近は、軽量で比較的安価なことからWeb・アプリのプログラミング開発機として選択肢にあがることが多くなったChromebook。ChromebookをWeb・アプリの開発機として使う際の機種の選び方をまとめました。

Web・アプリなどのプログラミング開発機にChromebookを使う際の選び方 の続きを読む

シリーズ・連載