年末年始に試したいWindows 10最新機能
第6回
WindowsとLinuxの架け橋“Windows Subsystem for Linux”
コンソールや「メモ帳」も巻き込んで改善中
2019年1月8日 07:15
「Windows 10 October 2018 Update」の新機能を紹介する本連載。第6回となる今回は、“Windows Subsystem for Linux(WSL)”とコンソールがテーマです。
“Microsoft Store”から簡単にLinuxをインストールできる!?
“Windows Subsystem for Linux(WSL)”は、Linux向けにコンパイルされたバイナリ実行ファイル(ELF)を「Windows 10」上でそのまま実行するための互換レイヤーで、「Anniversary Update(バージョン 1607)」から導入されました。この時はまだ開発者向けという位置づけでしたが、「Fall Creators Update(バージョン 1709)」で正式版に。誰でも気軽に利用できる、身近な存在となりました。
“WSL”の利点は、[Windows の機能の有効化または無効化]ダイアログで“WSL”を有効化し、“Microsoft Store”から簡単にLinuxディストリビューションを導入できること。物理マシンや仮想マシンを1台用意してインストールするよりもはるかに簡単です。消費するリソースも、仮想マシンより少なくて済みます。
また、複数のディストリビューションを同時に動かせる点や、削除や初期化が容易なところもメリットといえます。もし環境を破壊してしまっても、再インストールすれば元通り。Linuxを勉強したいというユーザーにも向いているかもしれませんね。
利用できるディストリビューションがまだ限られている点や、すべてのアプリを動かせるわけではない点、I/Oパフォーマンスが劣る点などが弱点ですが、ちょっとした開発ツールを動かしたいだけならば十分といえます。
「October 2018 Update」でも重点的な改善が施される
さて、“WSL”は機能アップデートのたびに大きな改善が加えられていますが(前バージョンでの改善点は下記リンクを参照のこと)、「October 2018 Update」でも引き続き強化の対象となっています。
まず、“Microsoft Store”で提供されるLinuxディストリビューションが拡充されました。
- 「Ubuntu 18.04」:現在、ストアでは3つのバージョンを選べる、異なるバージョンの共存も可能
- 「WLinux」:有償だが、Xサーバーと組み合わせたGUIアプリの実行が手軽
- 「OpenSUSE 15」「SLES 15」:「SUSE」の最新版
また、「Ubuntu 18.04」がARMデバイスで動作するようになりました。“Microsoft Store”から入手すると自動で“WSL”を実行しているアーキテクチャー(Intel/ARM)を検出し、最適なものをダウンロードするのだそうです。
Arm版Windows 10でも「Ubuntu」が利用可能! ~Build 2018で紹介されたWSLの新機能 - やじうまの杜 - 窓の杜
次に、“WSL”向けのLinuxディストリビューションをコマンドラインからインストールできるようになりました。たとえば、たとえば「Ubuntu 18.04」の場合は以下の要領でセットアップが可能です。
# PowerShell で Windows Subsystems for Linux を有効化
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
# Ubuntu のインストール
Invoke-WebRequest -Uri https://aka.ms/wsl-ubuntu-1804 -OutFile ~/Ubuntu.appx -UseBasicParsing
Add-AppxPackage -Path ~/Ubuntu.appx
# Ubuntu の実行
Ubuntu.exe
ディストリビューションの入手先を変更すれば「openSUSE」などもインストール可能です。
- SUSE Linux Enterprise Server:https://aka.ms/wsl-sles-12
- openSUSE:https://aka.ms/wsl-opensuse-42
そのほかにも「Chocolatey」と「Boxstarter」を利用したセットアップスクリプトもサポートされました。セットアップを自動化できるようになったわけです。
コンソールや「メモ帳」も巻き込んで改善中!
さて、このようにますます使いやすくなっている“WSL”ですが、改善されているのは何も“WSL”側だけではありません。
“WSL”上で動作するLinuxは、物理マシンや仮想マシンを用意してインストールした場合と異なり、Windowsとファイルシステムを共有しています。もちろん、そのままでは相互運用できないので仮想ファイルシステム(VFS)を介したアクセスとなります(参考記事)。
詳細には触れませんが、“WSL”側からWindowsのファイルシステムへアクセスしたり、編集することは可能(その逆は推奨されません)で、その便宜を図るための改善も「October 2018 Update」には含まれています。「メモ帳」でLinuxの改行コードがサポートされたのもその一環ですが、それだけではありません。
まず、「エクスプローラー」からLinuxシェルを起動する機能です。フォルダーで[Shift]キーを押しながらマウスを右クリックすると[Linux シェルをここに開く]コマンドが追加されており、これを選択すると“WSL”で既定となっているLinuxディストリビューションが起動します。たとえば“C:¥”でこのコマンドを利用すると、“/mnt/c”をカレントディレクトリとしてLinuxのシェルを開くことができます。
また、ファイルシステムも改善。Linuxはファイル名の大文字と小文字を区別するため、“WSL”もそれに倣っていましたが、Windowsアプリが“WSL”で作成したファイルを扱えないことがあったため、初期状態では無効化されました(Windowsは基本的にファイル名の大文字・小文字を区別しません)。これに伴い、“getfattr”“setfattr”コマンドでファイル名の大文字・小文字の区別を取得・切り替える機能が導入されました。
さらに、コンソールではキーボードショートカットによるテキストのコピー&ペーストがサポートされました。互換性を損なわないよう、初期状態では無効化されていますが、「コマンド プロンプト」のプロパティ画面から有効化することができます。
[Ctrl]+[Shift]+[C]キー:選択テキストのコピーを
[Ctrl]+[Shift]+[V]キー:コンソールへの貼り付け
そのほかにも次期バージョンの「Windows 10 19H1」ではマウスホイールによるズームやカーソルの変更がサポートされる予定。今後のさらなる改善に期待が持てそうです。
- Linux/WSLコンソールがショートカットキーによるコピペに対応 ~Windows 10 RS5 - 窓の杜
- [Ctrl]キー+マウスホイールでコンソールのズームが可能に、ダークモードにも対応 - 窓の杜
- コンソールにカーソル変更などの実験的機能 ~「Windows 10 19H1」Build 18298 - 窓の杜