本当にWindows 10って使えるの?

Windows 10上でUbuntuが動く時代に!?

 Windows 10への無料アップグレードが、今年7月29日で終了する予定だ。また、Windows 7の延長サポート期間も残り4年を切っており(*1)、“その後”をどうするか、そろそろ考えたいところ。

 そこで本連載では『Windows 10にすべきか悩む……』という人向けに、“Windows 10って使えるのか?”を紹介している。

*1Windows 7の延長サポート期間は2020年1月14日まで

Windows 10上でLinuxのコマンドがそのまま動作する

 Windows 10なら仮想マシンやコンテナを使わずUbuntuが動く。既に多くのメディアが取り上げているため目新しさは感じないかもしれないが、Windows 10のアドバンテージを語る上で欠かせないトピックだ。Windows 10の源流にあたるWindows NTでは、UNIXベースのアプリケーションのコンパイルと実行を可能にする“SUA(Subsystem for UNIX-based Applications)”を実装していた。冗長になるため歴史は割愛するが、SUAはWindows 8で廃止済み。このSUAに似た“WSL(Windows Subsystem for Linux)”を実装することで“Run Bash on Ubuntu on Windows”を実現している。

WSLの基本的な構造。Windows NT時代から引き継がれてきたサブシステムを利用し、Ubuntuのイメージにアクセスしている

 Canonical社が提供したUbuntu 14.0.4 LTSをそのまま保持しているため、「bash」を始めとするLinuxのコマンドがそのまま動作する仕組みだ。互いのファイルシステムはシームレスにアクセスできるが、「bash」から起動できるのはELFバイナリに限られるため、Winodws 10のコマンドは実行できない。逆にコマンドプロンプト上でAWKやPerlなども実行不可能。

 そのため、「Cygwin」や「MinGW」などを使ってきた方の移行先になるとは現時点で断言できない。MicrosoftはRun Bash on Ubuntu on Windowsについて、64bit版Windows 10のみに提供する開発者向け機能と定義し、GUIアプリケーションはサポートせず、サーバー目的の使用も推奨しないと説明している。

MicrosoftはGUIアプリケーションを非サポートとしているが、「Xming」などのWindows用Xサーバーを用意すれば実行可能
「Vim」など標準的なコマンドはあらかじめインストール済み。ちなみに「Emacs」もapt-getコマンドでインストール可能だった

 Run Bash on Ubuntu on Windowsはまだベータ版であり、多くの不具合があるものの、Windows上でネイティブのLinuxコマンドが使用できるのは、アプリケーション・Web開発者に留まらず、本誌読者にも大きなメリットとなるだろう。将来的には他のLinuxディストリビューションがサポートされる可能性もあるため、今後の進捗を大いに期待したい。

(Cactus:阿久津 良和)