WSL (Windows Subsystem for Linux) とは
ざっくり言うと、広い意味での仮想化技術を使って、Windows上でLinuxプログラムを動作させ、かつWindowsの世界と様々な形で相互連携できる、という機構です。
https://docs.microsoft.com/ja-jp/windows/wsl/about より引用:
Windows Subsystem for Linux を使用すると、開発者は、仮想マシンのオーバーヘッドなしで、ほとんどのコマンド ライン ツール、ユーティリティ、アプリケーションを含む GNU/Linux 環境を変更せずそのまま Windows 上で直接実行できます。
システム要件
- WSL バージョン1
- Windows 10 バージョン 1709 Fall Creators Update 以降
- WSL バージョン2
- Windows 10 バージョン 1903 ビルド 18362.1049 (KB4566116適用後)
- Windows 10 バージョン 1909 ビルド 18363.1049 (KB4566116適用後)
- Windows 10 バージョン 2004 ビルド 19041 以降
インストール (WSL バージョン1)
Windowsの機能の有効化
GUI、またはPowerShellを使って、Windowsのオプション機能「Windows Subsystem for Linux」を有効にします。
GUIであれば、スタート画面や設定アプリで「Windows の機能1」まで入力して検索するか、コントロールパネルから「コントロール パネル\プログラム\Windowsの機能の有効化または無効化」と辿ります。
PowerShellの場合は、管理者としてPowerShellを開き、下を実行します。
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
再起動を求められるので、再起動します。
Linuxディストリビューションのインストール
Microsoft Store、またはそれ以外の手段で、Linuxディストリビューションをインストールします。
Microsoft Storeの場合は、アプリを起動して「WSL」を検索します。
ピックアップされている無料のディストリビューションとして、Ubuntu 最新LTS版(18.04LTSと20.04LTSも登録されています)、Debian、OpenSUSE、SLES、Alpine、KALIが見つかるかと思いますので、好きなものを選んでインストールします。
Microsoft Storeを使わない場合は、ディストリビューションのダウンロードリンクから好きなディストリビューションのappxパッケージを選んでダウンロードします(Webブラウザでも、curlコマンドなどでも構いません)。
ダウンロードしたら、PowerShellコマンドでパッケージをインストールします。
Add-AppxPackage .\app_name.appx
Linuxディストリビューションの初期化
ディストリビューションをインストールした段階ではまだ有効化されていないので、初期化して有効にする必要があります。そのためには、インストールしたストアアプリを起動します。
ストアアプリから起動ボタンを押すか、もしくはスタート画面からディストリビューションを選択してください。
インストール (WSL バージョン2)
Windowsの機能の有効化
GUI、またはPowerShellを使って、Windowsのオプション機能「Windows Subsystem for Linux(Linux 用 Windows サブシステム)」と「仮想マシン プラットフォーム」を有効にします。
再起動を求められるので、再起動します。
WSLのデフォルトバージョンをWSL2にする(オプション)
今後インストールするLinuxディストリビューションのデフォルトをWSL2にするには、コマンドライン(PowerShellまたはコマンドプロンプト)で以下のコマンドを実行します。
wsl --set-default-version 2
Linuxディストリビューションのインストール
WSL1と同様なので省略します。
Linuxディストリビューションの初期化
WSL1と同様なので省略します。
LinuxディストリビューションをWSL2で動かすように設定する
Linuxディストリビューションは複数インストールできます。そして、インストールしたディストリビューションごとに、WSLのバージョンを設定できます。
コマンドラインで wsl -l -v
を実行すると、インストール&初期化済みのLinuxディストリビューションのWSLバージョンを確認できます。
PS> wsl -l -v
NAME STATE VERSION
* Ubuntu Stopped 2
Debian Stopped 1
インストール&初期化済みのLinuxディストリビューションのWSLバージョンを2に変更するには、コマンドラインで以下のコマンドを実行します。
wsl --set-version <ディストリビューション名> 2
-
「Windows 」の後ろに半角スペースを入れるとよい ↩