アプリ業界気になるニュース
2016.08.09
Bash on Ubuntu on Windowsは何がすごいのか
サーバー開発担当の木下です。
7月の末ごろ、Windows10への無料アップデート期間が終わるという話が、ニュースにも少し取り上げられていました。無料期間が終わるということは、Windows10のリリースからまる1年が経ったということになります。
このタイミングで、Windows10の1周年を記念(?)した「Anniversary Update」が公開されました。
普通にWindows10を使っているぶんには特に大きな違いはないかと思いますが、サーバーエンジニアにとっては大きな歴史のひとコマになる機能追加がありました。それが「Bash on Ubuntu on Windows」です。
Bash on Ubuntu on Windowsとは
かみ砕いて説明します。
Ubuntuとは
一般にLinuxとして知られるOSの一つですが、実は「Linux」そのものは「カーネル」(どのメーカーのどんなPCででも同じようにソフトウェアを動かせるようにするためのシステム)だけを持っています。そして、この「Linuxカーネル」と、ファイル操作アプリやサーバーアプリなどを組み合わせてひとつにまとめたものが「ディストリビューション」と言われています。Ubuntuはこの「Linuxディストリビューション」のひとつです。
Bashとは
Linuxディストリビューションは非常にたくさんあり、用途も様々です。しかし、ディストリビューションごとにまったく使い勝手が違うのでは、ユーザー側が大変です。そこで、どのディストリビューションでも同じように使用できるように、共通の操作環境がいくつか準備されています。その中でも、もっとも広く採用されているのが「Bash」です。
Bash on Ubuntu on Windowsとは
UbuntuでもBashが採用されていて、Ubuntu上でファイルを操作したりアプリを使用したりする時に用いられています。そして、これと(ほぼ)同じ環境をWindowsでも使用できるようにしたものが、Bash on Ubuntu on Windowsです。
何がすごいのか
これまでも、OS上で他のOSの環境を構築する方法はたくさんありました。
おそらくもっとも広く使われているのは「仮想OS」というもので、「VirtualBox」などはその代表例です。
しかし、仮想OSにもいくつかのデメリットがありました。たとえば、物理OS⇔仮想OS間のファイルなどのやりとりは基本的にできませんでした。また、物理OSの中のひとつのアプリとして別のOSが動くことになるので、動作が非常に重くなることもしばしばでした。
これに対して、Bash on Ubuntu on Windowsは、本来Linuxディストリビューションを操作するために用いられていたBashで、(ほぼ)直接Windowsを操作することができます。また、Linux向けに作成されているアプリを、かなり快適に使用することもできます。
例えるなら、日本語しか話せない人と英語しか話せない人の間に、自動通訳ロボットが来た、みたいなものでしょうか。我ながら変な例えです・・・
少し大げさですが、これまで立ちはだかっていたUNIX系OSとWindowsの壁がひとつなくなったと言っても良いと思います。OS界の歴史に残る大きなイベントなのではと感じています。
どう活用できるのか
現在、インターネット上に存在するサーバーの多くが、Linuxで提供されています。また、これから普及が期待されるIoTデバイスも、Linuxでの構築を想定しているものが少なくありません。しかし、Linuxを触ってみたいと思った時に、いきなりPCを買ってきてセットアップしたり、VPSを契約したり、というのはなかなかハードルの高いものです。
そういう意味で、WindowsのままLinux環境を体験することができる、というのは、非常に良い機会になるのでは、と期待しています。
次回は、Bash on Ubuntu on Windowsで具体的にどんなことができるのか、考えてみたいと思います。