情報源: What’s new in WSL in Windows 10 Fall Creators Update – Windows Command Line Tools For Developers
Windows 10 Fall Creators Update(RS3)の一般提供が来週の17日に迫ってきたことも有り、RS3でのWSLの変更についてまとめられています。
以下は私のメモ程度の簡訳なので、正確な記載については上の情報源を参照ください。
WSLはもはやベータ版ではありません!
Fall Creators Update(2017年10月17日出荷)では、WSLは完全にサポートされたOS機能になります。
つまり、WSLに関する予期しない問題や問題が発生した場合は、マイクロソフトサポートに連絡して、通常のチャネルで管理されるサポートチケットを提出することができます。
また、エンジニアリングチームとコミュニティは、WSL Github Issues RepoとWindows 10のFeedback Hubを介して引き続きサポートを提供します。これらのチャネルを介してコミュニティが提供するすべてのサポートに感謝します。
Windowsストア経由でLinuxディストリビューションをインストールする
RS2まではUbuntuがWSLで使用できる唯一のディストリビューションでしたが、RS3よりはWindowsストアより複数のディストリビューションがインストール可能となります。現在はUbuntu, openSUSE, SUSE Linux Enterprise Server(SLES)が用意されており、Fedoraやその他ディストリビューションについては今後数ヶ月で登場する予定です。
RS3以降のインストール手順は、以下のようにコンロールパネルのプログラムと機能よりWindowsの機能の有効かまたは無効化を選択し、以下の図のようにチェックを付けてWSLの基本機能をインストールし、再起動します。再起動しないとWSLのコンポーネントが動作しません。
再起動後、ストアで「Linux」検索し、Linuxバナーのボタンをクリックします。
次に、インストールしたいディストリビューションを選択します。
製品ページのインストールボタンをクリックします。
WSLは複数のディストリビューションを同時に実行可能となりました
Fall Creators UpdateのWSLの最大の改善点は、Windows Storeから1つ以上のLinuxディストリビューションをインストールするだけでなく、それらを同時に実行できることです。
これで、Ubuntu、openSUSE、SUSE Linux Enterprise Serverを並行してインストールして実行できます。お気に入りのWindowsツールやCmdやPowerShellなどのシェルも一緒にインストールできます。
各ディストリビューションは互いに独立して動作しますが、Windowsのホストファイルシステム、ネットワーキングスタックなどにもアクセスできます。
異なるディストリビューションが動作することで、Ubuntu上のApacheでホストされたWEBアプリケーションをWindowsのEdgeやChromeで表示テストし、同時にSUSE上で動作しているRESTクライアントのテストが可能です。ローカルでテストするときには、これらすべてのプロセスは、ファイアウォールの上に並んで実行されます。
また、注意点としては、RS2までのUbuntuのイメージは正常に動作し続けますが、廃止予定と見なされ正式にサポートされません。ファイルをいままでのインスタンスから、ストアよりインストールされたインスタンスに移し、既存のインスタンスは廃棄することが推奨されます。
WSLはWindows ServerとそのMicrosoft Azure VMにも付属するようになります
WSL arrives on Windows Server!を参照。
WSLはUSBシリアルポート、USBストレージ・ネットワーク共有のマウントをサポートします
WSLではUSBシリアルポートをサポートし、USBストレージやネットワーク共有のマウントをサポートします。以下の記事を参照してください。
マウントできるUSBストレージはWindowsのファイルシステム経由となるため、現在はFAT/FAT32/NTFS形式のストレージデバイスのマウントのみがサポートされていることに注意してください。
その他の修正と改善
詳細は16170から16288までのビルドのWSLリリースノートを確認ください。
改善点の一部は以下になります。
- 改良されたTCPソケットオプションinc。IP_OPTIONS、IP_ADD_MEMBERSHIP、IP_MULTICASTなど
- /etc/hostsはWindowsホストファイルからエントリを継承するようになりました
- xattr関連のシステムコールサポート
- いくつかのファイルシステムの機能と機能を修正
- 改善されたPTRACEサポート
- 改善されたFUTEXサポート
RS3より以下のシステムコールが初めてサポートされます。
- Prlimit64
- getxattr、setxattr、listxattr、removexattr
“Bash on Windows”と言う呼び方を非推奨とします
もともと、「Linux用Windowsサブシステム」という名前は、一般に、Linuxバイナリを実行するWindowsカーネルインフラストラクチャを指していました。これが意味することとエンドユーザーエクスペリエンスを伝えたいので、エンドユーザーの機能を「WindowsのUbuntuのBash」、または単に「WindowsのBash」と呼んでいます。
この名前付けスキームは、少なくともWSLが提供するものの本質を伝えるのに役立ちましたが、「Bash on Windows」はWSLのしくみを実際には説明していません。
だから、今後は機能名「Bash on Ubuntu on Windows」を使用しなくなります!
代わりに、「Windows Subsystem for Linux」(WSL)を使用して、Windows上でLinuxバイナリを実行できるようにするカーネルとWindowsツールを含むMicrosoftのテクノロジスタックを参照します。ディストリビューションは、Ubuntu、openSUSE、SUSE Linux Enterprise Serverなどの名前で知られています。
だから将来、会話は 「LinuxはWindows / WSL上でうまく動作する」、あるいは 「私はWSL上でUbuntuを実行する」、または 「WSL上でopenSUSEを試してみた」のようなものになります。
次は?
WSLエンジニアリングチームには長い改善と新規機能のリストが有り、これに取り組んでいます。今後Insider PreviewのFirst Ring向けには開発の都度新機能や改善を提供していきます。
[amazonjs asin=”4797386479″ locale=”JP” tmpl=”Small” title=”ふつうのLinuxプログラミング 第2版 Linuxの仕組みから学べるgccプログラミングの王道”]