WSL(Windows Subsystem for Linux)とは、Windows上でLinuxを動作させるための実行環境です。新しいバージョンである「WSL2」ではWindows上で「完全なLinux」が動かせるようになり、できることが大幅に増えました。この記事ではWSL(WSL2)とは何かや、WSL1・WSL2の違い、WSL2を使ってLinux環境を構築する方法について解説します。
Windows上でLinuxを動かせる「WSL」とは?
「WSL(Windows Subsystem for Linux)」とは、Windows上で動作するLinuxの実行環境です。マイクロソフト社は、開発者のためのツールとしてWSLを提供しています。WSL1のベータ版が2016年8月に、正式版が2017年10月に公開されたあと、2019年2月にはWSL2が公開されました。
WSLを利用することで手元のWindows OSをこれまで同様に使いながら、同じWindows上でLinuxを動作させることもできます。WSLでLinuxを使うにあたり、いちいちOSを再起動する必要はありません。あたかもWindowsにインストールされているソフトウェアの1つのように、Linux環境を利用できるのです。
2019年に登場したWSL2とWSL1の違い
2016年に公開したWSL1に比べ、2019年に登場したWSL2は大きな進化を遂げ、Linux環境として実行できる内容が大幅に増えています。それでは、WSL2・WSL1にはどのような違いがあるのでしょうか。以下、最も特徴的な差異について解説します。
|WSL2では「完全なLinux」が動かせるようになった
WSL1と比較したWLS2の最も大きな違いは、仮想マシンによって「完全なLinux」を動作させられるようになった点にあります。WSL1でもLinuxを動作させることはできますが完全ではなかったのです。
WSL1ではLinuxカーネルでなく、LXCoreというサブシステムがLinuxの実行環境を作っています。この仕組みがLinuxとしては不完全であり、できることに制限が生じていました。
WSL2では、Hyper-Vと呼ばれるハイパーバイザー上でLinuxカーネルが動作します。その結果、WSL2を使うことによりWindows上で完全なLinuxが使えるようになったのです。
|WSL2はWSL1より軽快に動作するようになった
WSL1もWindows上で比較的軽快に動作しますが、WSL2ではさらに高速に動作するようになっています。まずWSL2では、WS1より少ないメモリでLinuxを起動できるようになりました。WSL2であれば、搭載するメモリが少ないノートPCでも、より快適にLinux仮想マシンが使えます。
さらにファイルアクセスの面でも、WSL1に比べWSL2は改善が図られました。WSL1ではWindows標準のファイルシステムであるNTFSを使うことから、Linuxファイルへのファイルアクセスが遅くなります。一方のWSL2ではLinux標準のファイルシステム「EXT4」が採用され、Linuxファイルへのアクセスが格段に高速化したのです。
|WSL2では「仮想マシン」を使う仕組みに変更された
WSL1は仮想マシンでなく、サブシステムであるLXCoreがLinuxの実行環境を作っています。そのためIPアドレスはWindowsと共有するかたちでした。一方のWSL2では、専用の仮想マシン「Lightweight utility VM」上でLinuxが動作します。仮想ネットワークアダプタも作成されることから、WSL2ではWindowsとは別のIPアドレスを割り当てられるようになりました。
WSL2を使うための要件
WSL2は、全てのWindows OSで使えるわけではありません。WSL2が使えるバージョンはWindows10(64bit版)以降です。残念ながら32bit版では、WSL2を利用できません。
またWindows10は、以下より新しいバージョン・ビルドに更新されている必要があります。
・x64システムの場合:バージョン 1903 以降、ビルド 18362 以上
・ARM64システムの場合:バージョン 2004 以降、ビルド 19041 以上
Windowsのバージョン・ビルドは、Windows画面左下の「スタートボタン」から「設定」→「システム」と移動した先にある「詳細情報」にて確認できます。もし上記より古い場合は、OSを更新して下さい。
次にWSL2を使うためには、PCのハードウェアがHyper-Vに対応している必要があります。比較的新しいPCであればほぼ対応していますが、仮に対応していない場合はWSL2が使えないので注意して下さい。
Windows10でWSL2を使えるようにする手順
WSL2の概要についてみてきました。それでは、Windows10でWSL2を使えるようにするためには、どのような設定をすればよいでしょうか。以下、1つずつ手順をみていきましょう。
|1.Linuxインストール前の準備を行う
まず「Linux用Windowsサブシステム(WSL)」と「仮想マシン プラットフォーム」を有効化して、Linuxをインストールする準備を整えます。操作手順は以下の通りです。
【1】Windowsの「スタートボタン」→「Windowsシステムツール」→「コントロールパネル」→「プログラム」→「Windowsの機能の有効化または無効化」と進む
【2】「Windowsの機能の有効化または無効化」(以下)が表示される。「Linux用Windowsサブシステム(WSL)」と「仮想マシン プラットフォーム」にチェックを入れ「OK」をクリックする。
【3】画面の指示に従って再起動する
|2.WSL2用Linuxカーネルをインストールする
WSL2用Linuxカーネルをインストールします。以下の手順に従い作業を行ってください。
【1】ブラウザで「https://aka.ms/wsl2kernel」にアクセスする
【2】「x64マシン用WSL2 Linuxカーネル更新プログラムパッケージ」をクリックして、インストーラをダウンロードする
【3】ダウンロードしたインストーラをダブルクリックして起動させる
【4】インストーラが起動したら「Next」をクリックしてインストールをすすめる
|3.WSL2を既定のバージョンで利用できるようにする
初期設定では、Linuxディストリビューションを動作させる既定のバージョンとしてWSL1が選択されています。WSL2を既定のバージョンとするため、以下の操作を実行して下さい。
【1】「Windows」+「R」キーを押す。
【2】「ファイル名を指定して実行」メニューが表示されたら、検索欄に「cmd」と入力し、「OK」をクリックする
【3】コマンドプロンプト(黒い画面)が表示されたら、以下コマンドを入力し「Enter」キーをクリックする
wsl --set-default-version 2
|4. Linuxディストリビューションをインストールする
「Microsoft Store」にアクセスしてLinuxディストリビューションをインストールします。手順は以下の通りです。
※今回はLinuxディストリビューションのなかでも「Ubuntu」をインストールする手順を紹介します。
【1】Windowsの「スタートボタン」→「Microsoft Store」と進む
【2】検索欄に「ubuntu」と入力して検索を実行する
【3】検索結果の中から「ubuntu」を選択して、次の画面で「入手」をクリックする
【4】表示された画面で「開く」をクリックする ※インストールが開始されます。 【5】以下のように、ubuntuの初期設定画面が表示される
画面に従い、以下の順番で入力を進める
この入力まで終えたら、ubuntuのインストール作業は完了です。お手元のWindowsにて、ubuntuが使えるようになっています。
|Windows Terminalでより簡単にLinuxを使えるようにする
このままでは、WSL2を使う際にいちいちコマンドプロンプトやPowerShellから起動しなくてはなりません。「Windows Terminal」を使うと、WSL2を1つのタブとして切り替えて利用できるようになります。
以下の手順に従い、Windows Terminalをインストールして下さい。
【1】Windowsの「スタートボタン」→「Microsoft Store」と進む
【2】検索欄に「Windows Terminal」と入力して検索を実行する
【3】「Windows Terminal」が見つかったら「入手」をクリックする ※インストールが始まります
【4】インストールが完了したら「開く」をクリックする
Windows Terminalでは以下のように下三角ボタンからUbuntu(WSL2)を選択して、1つのタブとして利用が可能です。
Windows11でWSL2を使えるようにする手順
Windows11ではコマンドプロンプトにて以下コマンドを実行するだけで、ubuntuがインストールされたWSL2環境が使えるようになります。
wsl --install
このコマンドだけで、以下4つの操作が実行されています。
・「Linux用Windowsサブシステム(WSL)」と「仮想マシン プラットフォーム」を有効化する
・WSL2用Linuxカーネルをダウンロード・インストールする
・WSL2を既定のバージョンとする
・Ubuntuディストリビューションをダウンロード・インストールする
またWindows11は最初からWindows Terminalがインストールされています。Windows10のように、改めてインストールする必要もありません。
まとめ
WSL1と違いWSL2ではハイパーバイザー「Hyper-V」上で、Linuxカーネルが動作します。そのためWSL2を使うことで、Windows上で「完全なLinux」が動作するようになりました。 またWSL2では専用の仮想マシン「Lightweight utility VM」上でLinuxを動かすことができる上に、IPアドレスも割り当てられます。Windows+WSL2であれば、本物と変わらないLinux環境を手軽に用意して、Linuxの使い方を学んだり検証したりできるのです。
(提供:カゴヤ・ジャパン)
この特集の記事
- メールサーバーの基本的な仕組み・役割をわかりやすく解説します
- VPNとは? 仕組みや種類、メリットまで分かりやすく解説
- DoS攻撃/DDoS攻撃の違いとその対策方法
- 「CentOS後継問題」を教訓に学ぶ、最適なLinux OS選びと移行
- 【初心者向け】クラウド化とは?押さえておくべきメリット・デメリットと進め方
- Windows 10/11+WSL2で、PC上にDocker環境を用意しよう
- 量子コンピューターとは? 未来と課題をわかりやすく解説
- GitLab+カゴヤのVPSでプライベートなGit環境を簡単構築する
- Rust(Steam版)マルチサーバーをカゴヤのVPSで安価に立ててみた
- HPCとは何か? その全体像と現状、今後についてわかりやすく解説