好みのLinuxディストリビューションが選択可能に
ここからは他のジャンルに含まれない新機能をチェックしたい。まずWSL(Windows Subsystem for Linux)は新たなLinuxディストリビューションの選択肢としてKali LinuxやDebian GNU/Linuxが選択可能になった。蛇足だがWSL発表時に予定していたRedHat Linux Enterpriseは、いまだMicrosoft Storeに並んでいない。
このようにLinuxディストリビューションの選択肢が増えるのは歓迎すべき状況だが、それを支えるのがWSL-DistroLauncherの存在である。文字どおりWSL上で動作するAppXを作成し、自身のマシンへカスタムLinuxディストリビューションを作成するOSS(オープンソースソフトウェア)だ。
また、マウントするドライブやネットワーク構成をLinuxディストリビューション起動時に設定する「/etc/wsl.conf」のサポートも本バージョンから加わっている。冗長になるため手順は割愛するが、ご興味をお持ちの方は公式ブログを参照してほしい。
この他にもWSLはバックグラウンドタスクのサポートやWindows 10とLinux間でパスを変換するwslpath、ファイルシステムの拡張など多くの改良が加わった。
OpenSSHに代表されるコマンドラインの拡充
あくまでも個人的意見だが、WindowsはLinuxをベースにしたGUIラッパーでも構わないのでは思うことがある。自身でも非現実的だと思うが、MicrosoftはWindowsとLinuxの融合は前述したWSLとは異なる方向からも進めてきた。それがOpenSSH(Open Secure Shell)の標準サポートと、コマンドツールとしてtarやcURLを標準搭載した点である。
OpenSSHはリモートログインに代表されるリモート操作を、公開鍵/秘密鍵のペア管理で実現するツールとして、*BSDやLinuxなどWindows以外のOSは標準的に使われてきた。Microsoftは2015年6月にOpenSSHの移植表明を行い、長年開発に取り組むことで現在に至っている。
上図に示したようにOpenSSHサーバー&クライアントはGUIベースでインストールするが、PowerShellを使うことも可能だ。管理者権限を持つPowerShellのプロンプトに「Get-WindowsCapability -Online | ? Name -Like 'OpenSSH*'」と入力すると、現在の状態を確認できる。クライアントは「Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0」、サーバーは「Add-WindowsCapability -Online -Name OpenSSH.Servert~~~~0.0.1.0」と実行すればよい。なお、バージョン情報は最初の確認結果に合わせて変更する。
tarはUNIX系OSで標準的に使われるファイルのアーカイブコマンドだが、gzip(GNU zip)、bzip2、LZMA、xzと一般的な圧縮形式をサポート。cURLはhttpなど各種プロトコルをコマンドラインから操作するファイル転送ツールだ。
これらのツールをWindows 10が標準サポートする理由は、ソフトウェア開発者の支援に尽きる。前述したWSLのサポートについてMicrosoftは、開発者が好きな環境で好きな開発ツールを使えるためと当初から表明してきた。統合開発環境であるVisual Studio Communityの無償化や、今回のコマンドラインツールの強化もその一環である。
ソフトウェア開発者の地位が高まりつつある状況を鑑みると、Windows 10の開発者に対するラブコールは今後も高まり続けるだろう。