WSL (Windows Subsystem for Linux) のセットアップ方法

2019年2月2日にリリースされたHomebrew v2.0から、公式サポート環境にWindows 10(WSL)とLinuxが加わりました。

この記事では、Homebrewで必要になるWSLのセットアップ方法を解説します。

目次

Windows 10でのWSLのインストール

次の手順でインストールします。

(1) スタートメニューから「設定」を選択します。

(2) 「アプリ」を選択します。

(3) 「プログラムと機能」をクリックします。

アプリと機能
アプリと機能

少しわかりにくいところにありますが、「関連設定」というところの下にあります。スクリーンキャプチャでは右上に表示されていますが、ウインドウの幅が狭いときは、インストール済みアプリのリストの下に表示されます。

(4) 「Windowsの機能の有効化または無効化」をクリックします。

プログラムと機能ウインドウ
プログラムと機能ウインドウ

表示されたウインドウの左側に並んだリンクの中にあります。

(5) 「Windows Subsystem for Linux」と「Windowsハイパーバイザープラットフォーム」(または「Hyper-V」)をチェックして「OK」ボタンをクリックします。

Windowsの機能のオンオフ切り替え
Windowsの機能のオンオフ切り替え

(6) インストールが始まります。インストールが完了すると「必要な変更が完了しました。」が表示されます。「今すぐ再起動」ボタンをクリックします。

インストール完了
インストール完了

Windows 11でのWSLのインストール

次の手順でインストールします。

(1) スタートボタンをクリックし、「設定」を選択します。

(2) 「アプリ」を選択します。

(3) 「オプション機能」をクリックします。

「設定」の「アプリ」
「設定」の「アプリ」

(4) 表示された画面を一番下までスクロール、「関連設定」の「Windowsのその他の機能」という項目をクリックします。

オプション機能
オプション機能

(5) 「Windowsの機能」というダイアログが表示されます。「Linux用Windowsサブシステム」と「Hyper-V」(または「Windowsハイパーバイザープラットフォーム」)をチェックし、「OK」ボタンをクリックします。

Windowsの機能ダイアログ
Windowsの機能ダイアログ

(6) インストールが始まります。インストールが完了すると「必要な変更が完了しました。」と表示されます。「今すぐ再起動」ボタンをクリックします。

インストール完了
インストール完了

Linuxディストリビューションをインストールする

次にWSLで動かすLinuxディストリビューションをインストールします。WSLで動かすLinuxディストリビューションは、Microsoft Storeからインストールできます。

Homebrewを使うという目的では、どのディストリビューションでも構わないと思います。私は慣れていることもあり、Ubuntuをインストールすることにしました。

次のように操作します。

Windows 10の場合

Windows 10とWindows 11で少し表示が変わりますが、操作方法は同じです。

(1) Microsoft Storeアプリで「Ubuntu」を検索します。

検索結果
検索結果

(2) Ubuntuをクリックします。(この記事執筆時点では無料です)

(3) 入手ボタンをクリックします。

Microsoft Store内のUbuntu
Microsoft Store内のUbuntu

(4) 起動ボタンをクリックします。インストール完了時の通知で「スタートにピンとめ」を選択しておけば、スタートから起動できます。

Windows 11の場合

Windows 10とWindows 11で少し表示が変わりますが、操作方法は同じです。

(1) Microsoft Storeアプリで「Ubuntu」を検索します。

(2) Ubuntuの「インストール」ボタンをクリックします。ストアへのログイン状況や過去に一度もダウンロードしたことがアカウントの場合は「入手」と表示されます。その場合は「入手」ボタンをクリックします。

Microsoft Store内のUbuntu
Microsoft Store内のUbuntu

Ubuntuのセットアップ

Ubuntuを起動すると、シェルが起動します。初回起動時はUbuntu側のセットアップが必要になります。次の手順でセットアップします。

(1) インストール処理の残りが実行されます。そのまま待ちます。

Ubuntuのバージョンによって、次のようなシェルが表示される場合と、GUIでプログレス表示が行われる場合があります。

Installing, this may take a few minutes...
Ubuntuのセットアッププログレス
Ubuntuのセットアッププログレス

ここで、エラーが表示されることもあります。エラーメッセージと共に、解決方法が書かれたWebサイトのURLが表示されます。そのページを開き、指示に従って解決してから、再度、起動してください。エラー画面は何かキーを押すと閉じられます。

私の環境で起きたエラーについては、この記事の後の項目に書きましたので、参照してください。

(2) しばらくすると、次のように表示され、UNIXユーザーアカウントを作成するため、ユーザー名の入力待機になります。任意のユーザー名を入力します。

Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms/wslusers
Enter new UNIX username:

(3) 次のように表示されるので、パスワードを設定します。

Enter new UNIX password:
Retype new UNIX password:

これで、WSL上でUbuntuを使えるようになりました。

カーネルコンポーネントを更新する

次のようなエラーが表示されることがあります。

WslRegisterDistribution failed with error: 0x800701bc
Error: 0x800701bc WSL 2 ???????? ?????????????? https://aka.ms/wsl2kernel ????

Press any key to continue...

古いカーネルコンポーネントのときに表示されるエラーなので、https://aka.ms/wsl2kernelを開き、新しいコンポーネントをインストールする必要があります。次のように操作します。

(1) https://aka.ms/wsl2kernel を開きます。

(2) 「x64マシン用WSL2 Linuxカーネル更新プログラムパッケージ」をダウンロードします。ただし、ARM64マシンなど、x64マシン以外を使っている場合は、Webページに書かれている指示に従ってください。

(3) ダウンロードしたファイルを開きます。ウィザードが表示されるので、「Next」ボタンをクリックします。

インストーラウィザード
インストーラウィザード

(4) インストールが始まります。ウィザードの指示に従います。完了画面になったら「Finish」ボタンをクリックして閉じます。

完了画面
完了画面

BIOSやUEFIで仮想化支援機能の有効化が必要なとき

BIOSやUEFIで仮想化支援機能の有効化が必要なときは、次のようなエラーが表示されます。

WslRegisterDistribution failed with error: 0x80370102
Please enable the Virtual Machine Platform Windows feature and ensure virtualization is enabled in the BIOS.
For information please visit https://aka.ms/enablevirtualization

(1) 使用しているマシンの説明書に従って仮想化機能を有効化します。たとえば、私が使用しているDELLのマシンの場合は、BIOSメニューの中に、次の項目があります。

  • Enable Intel Virtualization Technology
  • Enable VT for Direct I/O

(2) 管理者権限でPowerShellを起動します。

(3) PowerShellで次を実行し、ハイパーバイザーの起動が有効になっているかを確認します。

bcdedit /enum | findstr -i hypervisorlaunchtype

以下のように表示された場合は、ハイパーバイザーの起動がOFFになっています。

hypervisorlaunchtype Off

次のように入力して、有効にします。

bcdedit /set {current} hypervisorlaunchtype Auto

何も表示されない場合は、必要なコンポーネントがインストールされていない可能性があります。まず、次のように入力して、Hyper-Vに対応しているかを調べます。

systeminfo.exe

色々な情報が表示されますが、Hyper-Vの要件を確認します。以下のように出力されればHyper-Vに対応しているマシンです。

Hyper-V の要件: VM モニター モード拡張機能: はい
               ファームウェアで仮想化が有効になっています: はい
               第2レベルのアドレス変換: はい
               データ実行防止が使用できます: はい

この状態でエラーが出ている場合は、Hyper-Vがインストールされていない可能性が高いです。この記事のWSLのインストール手順に従って「Hyper-V」(「Windowsハイパーバイザープラットフォーム」)をインストールしてください。

次のように表示された場合は、既にHyper-Vが使用可能な状態になっています。

Hyper-V の要件: ハイパーバイザーが検出されました。Hyper-V に必要な機能は表示されません。

著書紹介

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

Akira Hayashi (林 晃)のアバター Akira Hayashi (林 晃) Representative(代表), Software Engineer(ソフトウェアエンジニア)

アールケー開発代表。Appleプラットフォーム向けの開発を専門としているソフトウェアエンジニア。ソフトウェアの受託開発、技術書執筆、技術指導・セミナー講師。note, Medium, LinkedIn
-
Representative of RK Kaihatsu. Software Engineer Specializing in Development for the Apple Platform. Specializing in contract software development, technical writing, and serving as a tech workshop lecturer. note, Medium, LinkedIn

目次