Windows Subsystem for Linux
Windows Subsystem for Linux Microsoft Windows コンポーネント | |
---|---|
![]() | |
Windows 10上で実行されたBash | |
詳細 | |
種別 | 互換レイヤー |
標準提供 |
Windows 10, version 1709 Windows Server, version 1709 Windows 10, version 1607(ベータ版) |
置換 | Microsoft Windows Services for UNIX |
Windows Subsystem for Linux (WSL) とは、Linuxの(ELFフォーマット形式の)バイナリ実行ファイルをWindows 10およびWindows Server上でネイティブ実行するための互換レイヤーである。
概要
マイクロソフトとカノニカルの提携により、Windows 10, version 1607 (Anniversary Update) のベータ版では、Ubuntu 14.04 (Trusty Tahr) イメージ[1]をWindows 10ユーザーのローカルマシンにダウンロードして展開し、そのイメージに含まれるツールやユーティリティーをWSL上でネイティブに実行することが可能になった[2][3][4]。WSLはマイクロソフトが開発した(Linuxカーネルのコードが含まれていない)Linux互換のカーネルインタフェースとともに、その上で動くUbuntuに由来するユーザーモードバイナリを提供する。これはBashシェルやコマンド言語、ネイティブLinuxコマンドラインツール(sed、awkなど)やプログラミング言語インタプリタ(Ruby、Pythonなど)[5]を含む[6]。
WSLは全てのLinuxソフトウェアを動かせるわけではない。WSLの提供しないLinuxカーネルサービスを必要とするものは不可能である[7]。グラフィカルユーザインタフェースを使用するアプリケーションは、画面描写に関わるX Window Systemアプリケーションを、外部Xサーバ(Xming, VcXsrv Windows X Serverなど)と共に起動し、利用する必要がある[8]。Windowsコンピュータ上でLinuxソフトウェアを直接起動するための最善の手段は完全な仮想マシンであるが、WSLはユーザーがWindowsアプリとLinuxツール(厳密にはLinuxディストリビューションの1つであるUbuntu上で動作可能なツール)を同一ファイルセット上で利用できるようにしながら、完全な仮想マシンよりも少ないリソースしか利用しない[5][9]。
WSLはWindows 10の64ビット版で[5]、Windows 10, version 1607 (Anniversary Update) と version 1703 (Creators Update) でベータ版を、version 1709 (Fall Creators Update) から正式版を利用できる。ただし Windows 10 S[10]やWindows 10 IoT Coreを除く。またWindows 10 Enterprise 2016 LTSBはリリース当時WSLがベータ版だったため未提供[11]。Windows Serverでは、Windows 10, version 1607とほぼ同時にリリースされたサーバ用OSのWindows Server 2016には搭載されていなかったが、2017年8月8日にリリースされた Insider Preview Build 16237 から利用可能になり[12][13]、Windows Server, version 1709 にて正式搭載された。
WSLは、Windows 10 Mobile上でいくつかのAndroid用アプリを実行できるようにするためのプロジェクトだがリリースされることはなかった、Project Astoriaを発祥とする[7]。
マイクロソフトはWSLを「主として開発者、特にWeb開発者やオープンソースプロジェクトを利用する開発者のためのツール」としてイメージしている[5]。
Windows 10, version 1703までのベータ版においては、WSLの利用の際、Windows 10の開発者モードを有効化しなければならないという制限があった。2017年10月に公開されたWindows 10, version 1709の機能の一つとして、左記の制限が撤廃されたWSLの正式版が提供されている[14]。
対応ディストリビューション
ベータ版ではUbuntuのみサポートされていたが、正式版となったWindows 10 Fall Creators Updateから各種ディストリビューションが対応された[15]。 Microsoftストアからそれぞれ独立してインストールできる。システムも独立しているため併用可能。
- Ubuntu
- openSUSE Leap 42[16]
- SUSE Linux Enterprise Server[16]
- Fedora[17]
- Kali Linux[18]
- Debian GNU/Linux[19]
経緯
2016年3月30日(米国時間)に開催されたマイクロソフトのBuild 2016カンファレンスで発表された[20]。
2016年4月6日にリリースされたWindows 10 Insider Preview ビルド 14316において最初に公開された[21]。
2016年8月2日(日本時間8月3日)に公開されたWindows 10の半期チャンネルのアップデートである Windows 10, version 1607 (Anniversary Update) によってベータ版の提供が開始された[22]。
2017年8月8日、Windows ServerのInsider Preview Build 16237からWindows Serverでも利用可能になった[12]。
2017年10月17日(日本時間10月18日)に公開されたWindows 10の半期チャンネルのアップデートである Windows 10, version 1709 および Windows Server, version 1709 において正式版となった。Windows 10の開発者モードを有効にしなくても利用可能となった[23][24]。
実行可能なLinuxのディストリビューション
Windows上で実行可能なLinuxのディストリビューションは、Ubuntu・OpenSUSE・SUSE Linux Enterprise Server などがあり、それぞれMicrosoftストアで配布されている[14]。WSLのインフラストラクチャとツールのサポートはマイクロソフトが、ディストリビューション内部のサポートはディストリビューションの配布元が、それぞれ提供している。
当初、WSLのベータ版においてはUbuntuのみとなっていた。WSLの提供開始当初のWindows 10, version 1607 (Anniversary Update) のUbuntuのバージョンは14.04であったが、2017年4月11日に公開されたWindows 10の半期チャンネルのアップデートである version 1703 (Creators Update) では、Ubuntuのバージョンは16.04 (Xenial Xerus) に変更されていた[25]。
インストール方法
インストール方法は以下の通り[26]。
- 管理者権限でPowerShellを起動し、
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
と入力する。 - Windowsを再起動。
- MicrosoftストアからLinuxディストリビューションをインストールする。
使用例
Ubuntuの場合
定期的にパッケージを最新版に更新する。
$ sudo apt update
$ sudo apt upgrade
NetHackをプレイする。
$ sudo apt install nethack
$ nethack
X Window Systemのクライアントを実行する (あらかじめXmingなどのXサーバーをWindows上で起動しておく)
$ sudo apt install x11-apps
$ sudo apt install x11-utils
$ sudo apt install x11-xserver-utils
$ export DISPLAY=:0
$ xeyes
$ firefox
Windowsのコマンド プロンプトからUbuntuのls、date、sort、uniqコマンドを実行する
C:\Users\a>bash -c "ls -l '/mnt/c/Program Files'"
C:\Users\a>bash -c "date '+%Y年%m月%d日 %H時%M分%S秒'"
C:\Users\a>bash -c "sort|uniq" < "C:\work\テストデータ.txt"
Windowsのコマンドと連携する(bash のlsコマンドの結果をWindowsのclip.exeでクリップボードに送る例)
$ ls -l '/mnt/c/Program Files' | clip.exe
関連項目
脚注
- ^ Ubuntu 16.04 is slow in bash but ubuntu 14.04 was faster
- ^ “Run Bash on Ubuntu on Windows”. Building Apps for Windows. マイクロソフト (2016年3月30日). 2016年10月2日閲覧。
- ^ “Why Microsoft Making Linux Apps Run on Windows Isn’t Crazy”. Wired. Condé Nast (2016年3月30日). 2016年10月2日閲覧。
- ^ Kirkland, Dustin (2016年3月30日). “Ubuntu on Windows – The Ubuntu Userspace for Windows Developers”. Ubuntu Insights. カノニカル. 2016年10月2日閲覧。
- ^ a b c d “Frequently Asked Questions for WSL”. マイクロソフト. 2016年10月2日閲覧。
- ^ “Bash on Ubuntu on Windows”. MSDN. マイクロソフト (2016年4月9日). 2016年10月2日閲覧。
- ^ a b “Why Microsoft needed to make Windows run Linux software”. Ars Technica. コンデナスト・パブリケーションズ (2016年4月6日). 2016年10月2日閲覧。
- ^ Aleksandersen, Daniel (2016年4月7日). “Running Linux desktop apps on the Windows Subsystem for Linux”. Slight Future. 2016年10月2日閲覧。
- ^ 亀川和史 (2016年8月23日). “Bash on Ubuntu on Windowsとは? そのインストールと使い方”. Digital Advantage. 2016年10月2日閲覧。
- ^ “Will Linux distros run on Windows 10 S?” (2017年5月18日). 2017年6月1日閲覧。
- ^ “When I reinstall my win10 2016 LTSB, bash can not install · Issue #1281 · Microsoft/BashOnWindows”. 2016年12月13日閲覧。
- ^ a b Windows Subsystem for Linux on Windows Server - Building Apps for WindowsBuilding Apps for Windows
- ^ What’s new in WSL in Windows 10 Fall Creators Update – Windows Command Line Tools For Developers
- ^ a b “Windows Subsystem for Linuxが正式版へ”. CodeZine. 翔泳社 (2017年7月31日). 2017年10月21日閲覧。
- ^ 樽井秀人 (2017年11月28日). “「Fall Creators Update」で広がるWindows 10の世界 ~複合現実とLinux対応”. 窓の杜. Impress Watch. 2018年3月7日閲覧。
- ^ a b 樽井秀人 (2017年7月24日). “「openSUSE Leap」がWindows 10の“ストア”に登場 ~「SUSE Linux Enterprise Server」も”. 窓の杜. Impress Watch. 2018年3月7日閲覧。
- ^ 「Windows Subsystem for Linux」、SUSEとFedoraもサポートへ
- ^ 樽井秀人 (2018年3月6日). “Linuxディストリビューション「Kali Linux」が“ストア”から導入可能に”. 窓の杜. Impress Watch. 2018年3月7日閲覧。
- ^ “「Debian」と「Kali Linux」がMicrosoftストアからダウンロード可能に”. ZDNet (2018年3月7日). 2018年3月8日閲覧。
- ^ Frederic Lardinois (2016年3月31日). “Build 2016で驚きの発表―Microsoftはこの夏Windows 10でBashシェルをサポート”. AOL Online Japan, Ltd. 2016年10月2日閲覧。
- ^ “Announcing Windows 10 Insider Preview Build 14316”. Windows Experience Blog. マイクロソフト (2016年4月6日). 2016年10月2日閲覧。
- ^ 海上忍 (2016年8月29日). “Macはもう不要!? - "UNIX使い"狙い撃ちの「Windows Subsystem for Linux」を検証する(前編)”. Ascii.jp. 2016年10月2日閲覧。
- ^ 後藤大地 (2017年10月19日). “Windows 10 Fall Creators Update、注目の新機能・変更点まとめ”. マイナビニュース. マイナビ. 2017年10月21日閲覧。
- ^ 樽井秀人 (2017年7月31日). ““Windows Subsystem for Linux”が正式版に ~今秋公開の「Fall Creators Update」で”. 窓の杜. インプレス. 2017年10月21日閲覧。
- ^ 亀川 和史 (2017年3月7日). “Bash on Ubuntu on Windowsの、Creators Updateでの強化点&新機能”. Build Insider. Digital Advantage. 2017年6月16日閲覧。
- ^ Install the Linux Subsystem on Windows 10 | Microsoft Docs