WSL(WSL2)のインストールと使い方 [2022年版]

Windows全般
スポンサーリンク

Windows標準機能のWSL(WSL2)を使うと、Linux環境を扱うことができます。2022年8月時点で最近のOSバージョンであれば、wsl --install」コマンドだけでWSL2のインストールが可能で、簡単に使い始めることができます。

本記事では、WSL2のインストール手順や、起動・終了方法、WindowsとLinux間のファイルのやり取りなど、基本的な使い方について解説します。

WSLとは?

WSL(Windows Subsystem for Linux)とは、Windows内でLinux環境を使うことができるOS標準の機能です。

下の画面はWSL(WSL2)を使い、Windows11でLinux環境(Ubuntu)を操作している例です。

このLinux環境は基本的に、Windowsとは独立して動作します。それでいながら、双方のファイルのやりとりは簡単に行えます。

WindowsでLinux環境を使うシーンとして、次のものが挙げられます。

  • Linux環境でしか動作しないツールを使用する(例:Ansible など)
  • 開発したアプリケーションをLinux上でテスト・デバッグする
  • Linuxの使い方を学ぶ  など

WSLには、現時点で「WSL2」と「WSL1」の2つのバージョンがあります。これらの違いは、下記をご覧下さい。ここではWSL2を使うことを前提として解説します。

WSL1とWSL2の違い

最初のWSL(WSL1)は Windows 10 1709 で正式にリリースされ、そのあと機能強化されたWSL2がWindows 10 2004 でリリースされました(Wikipediaより)。

WSL2は、WSL1に比べて基本的にパフォーマンスが向上しています。また、より「本物に近い」Linux環境を使えるようになっています。このように、WSL2は多くの面でWSL1より優れています。とはいえ、完全にWSL2に置き換えられたわけではなく、WSL1を使うことも出来ます。

どちらを使うべきか迷ったら、基本的にWSL2を使うと良いでしょう。

WSL1とWSL2の機能比較や、WSL1を選ぶべきケースについて、詳しく知りたい方は下記のMicrosoft ドキュメントを参照して下さい。

WSL バージョンの比較
WSL 2 は WSL 1 の利点を提供しますが、WSL 1 のような変換レイヤーではなく、実際の Linux カーネルを使用します。その結果、パフォーマンスが向上します。

WSL2を使える環境

WSL2は、次のWindows OSで使用可能です。

WSL2を使えるWindowsバージョン
  • Winodws 11
  • Windows 10 バージョン 2004以降 64ビット
    • ProやEnterpriseエディションだけでなく、Homeエディションでも使用可能
  • Windows Server 2022 (2022年6月以降のアップデート)

上記はWSL2の要件であり、これ以外の環境でもWSL1であれば使える場合があります。

Windows Server は、以前までWSL1しか使用できませんでした。しかしWindows Server 2022の上記のアップデートから、ようやくWSL2が使えるようになったようです。

使用可能なLinuxディストリビューション

WSL2の仕組みとして、Windows内でLinuxの仮想マシンを動作させています。そしてLinuxには、UbuntuやDebianなどの複数のディストリビューションがあります。使用できるディストリビューションは次の通りです。

WSL2で使用可能なLinuxディストリビューション(2022年8月時点
  • Ubuntu
  • Debian GNU/Linux
  • Kali Linux Rolling
  • openSUSE Leap 42
  • SUSE Linux Enterprise Server v12
  • Ubuntu 16.04 LTS
  • Ubuntu 18.04 LTS
  • Ubuntu 20.04 LTS

※2022/8/11現在 「wsl --list --online」コマンドで確認できるもの

最初にインストールするときに、ディストリビューションを指定しないと、既定の「Ubuntu」が選ばれます(2022年8月時点)。

「Ubuntu」と「Ubuntu 20.04」などがあるのはなぜ?

上の一覧には「Ubuntu」がたくさんあります。「Ubuntu 20.04 LTS」のようにバージョンがあるものは分かるとして、バージョンのない「Ubuntu」は何者なのでしょうか?

これについては、サイト「窓の杜」様の下記記事が参考になります。

ストアにある3つの「Ubuntu」の違いは? ~WLSの「Ubuntu」をアップグレードする方法/「Ubuntu」のリリース形態を理解して、適切なものを選択しよう【やじうまの杜】
“やじうまの杜”では、ニュース・レビューにこだわらない幅広い話題をお伝えします。

語弊を恐れずに簡単に言うなら、バージョンのない「Ubuntu」は「その時に適したUbuntuバージョンが選ばれる」といったところでしょうか。

WSL2のインストール方法

初めてWSL2を使うときに、Linux環境をセットアップする手順を紹介します。ここでは、既定のディストリビューションであるUbuntuをインストールし、使用する例を見てみましょう。

ここではWindows 11の画面を紹介しますが、Windows 10やWindows Server でも同様です(ただしWSL2を使用可能なバージョンであること)。

WSL2のインストール方法(Ubuntuの例)
  • step1
    プロンプトを「管理者として実行」

    Windows 11の場合、下図の手順で「Windows ターミナル(管理者)」を起動します。

    Windows 10やWindows Serverの場合、同様の手順で「Windows PowerShell(管理者)」を選択します。

  • step2
    インストールコマンドを実行

    プロンプトで次のコマンドを入力し、Enterを押すとインストールが始まります。

    wsl --install

    このコマンドは、既定のディストリビューションである「Ubuntu」をインストールします(他のディストリビューションを指定する方法は後述)。

    インストールは5~15分程度かかるようです。「要求された操作は正常に終了しました」と表示されるまで待ちます。

  • step3
    再起動

    インストール完了後、再起動を求められますので、コンピューターを再起動します。

  • step4
    ユーザー名・パスワードを設定

    OS再起動後、Linux環境が自動起動し、インストール処理の続きが行われます。しばらくするとユーザー名とパスワードが聞かれるので、これらを設定します。

    ユーザー・パスワードはWindowsと共通ではない

    Linux環境のユーザーは、Windows環境と共通ではありません。Windowsとは別のユーザー名・パスワードを設定してもOKですし、同じでも大丈夫です。また、どちらかのパスワードを変えても、もう片方には反映されません。

    エラー「0x80370102」が出るときは

    画面に「Error: 0x80370102 ?????…」というエラーが表示される場合、別の記事を参照して下さい。

  • step5
    Linux環境を操作する

    この後は、通常のLinuxと同様に操作します。試しに「lsb_release -a」コマンドで、Ubuntuのバージョンを確認してみます。

    あとはLinux環境を任意に操作します。

    Linux環境の起動・終了や、Windows環境とのファイルのやり取りについては、次項で解説します。

今は「機能の有効化」操作は不要

WSL2のインストール手順をウェブで検索すると、「Windowsの機能の有効化または無効化」から「Linux用Windowsサブシステム(WSL)」と「仮想マシン プラットフォーム」にチェックを入れて有効化するように解説している記事があります。具体的には下記URLの手順です。

以前のバージョンの WSL の手動インストール手順
wsl install コマンドを使用するのではなく、古いバージョンの Windows に WSL を手動でインストールする手順について段階的に説明します。

この方法も間違いではありませんが、現行のOSバージョンでは不要になっています。「wsl –install」コマンドだけで、これらを自動的にやってくれます。楽ですね。

Linux環境の起動・終了

インストール後は、必要な時にLinux環境を起動して使用することができます。起動や終了は次のように行います。

Linux環境の起動方法

WSL2のLinux環境は、スタートメニューからLinuxディストリビューション名を選択すると、操作用のプロンプトが起動します。

前項の手順でUbuntuをインストールした場合、下のように「Ubuntu on Windows」を選択すればOKです(Windows 11の例)。

開始方法は他にもあります。例えば、Windows ターミナル(またはWindows PowerShell、コマンドプロンプト)で「wsl」コマンドを入力することでも可能です。

裏で仮想マシンが自動起動する

WSL2のLinux環境の実体は「仮想マシン」です。Hyper-Vベースの軽量な仮想化基盤上で、Linuxの仮想マシンが稼働しています。つまり、PCの中で、別のPCが動いているイメージです。

この仮想マシンは上記の操作により、バックグラウンドで自動的に起動され、使用していないときは自動的に停止します。ですので、実体の仮想マシンを意識しなくても大丈夫です。

Linux環境の終了方法

Linux環境を終了するには、操作中のウィンドウを「×」で閉じればOKです。特にLinuxのシャットダウンコマンド(shutdown -h など)は不要です。終了すると、基本的に作業中の内容は維持されません。

あるいは、「wsl」コマンドでLinux環境を開始した場合は、「exit」コマンドで元のプロンプトに戻ります。

実体の仮想マシンは自動停止

終了すると、WSL2のLinux環境の実体である仮想マシンも、基本的に自動停止します。

これを確認するには「wsl -l -v」コマンドを使います。ウィンドウを閉じた直後は、Linuxディストリビューションの状態(STATE)が「Running」ですが、しばらくすると下のように「Stopped」になることが分かります。

したがって、特に意識しなくても無駄なマシンリソースは消費しません。

この自動起動や終了の仕様(例えば、常時稼働のデーモンも終了されるのかなど)については、Microsoft公式資料からは見つけられませんでした。これについては、ブログ「メモ置場のブログ」様の下記記事が参考になりそうです。

Windowsとファイルをやり取りする方法

WSL2のLinux環境と、ベースのWinodws環境は、互いに独立して動作します。ファイルも、基本的にはそれぞれで独立して保持しています。ただし、双方のファイルのやり取りは簡単にできるようになっています。

Windows環境からLinux環境のファイルにアクセスする場合

下のように、Windows エクスプローラーのツリーで「Linux」を展開すると、Linux環境のファイルにアクセスできます。「Ubuntu」など、インストール済みのディストリビューションごとにフォルダが分かれています。

あるいは、アドレスバーに「\\wsl$」または「\\wsl.localhost」を指定することでも可能です。

ファイルの参照だけでなく、書き込みも可能です。

ちなみに実体の仮想マシンが停止状態(Stopped)の場合でも、自動的に起動されるので、特に意識する必要はありません。

Linux環境からWindows環境のファイルにアクセスする場合

Linux環境からWindowsのCドライブにアクセスする場合は、「/mnt/c」のパスを指定します。Dドライブなら「/mnt/d」のようになります。

こちらも同様に、ファイルの参照だけでなく、書き込みも可能です。

他のディストリビューションを使うには?

前項の例では、規定のディストリビューションであるUbuntuをインストールしましたが、Debianなど他のディストリビューションを指定することもできます。

wsl --install -d <ディストリビューション名>

上のコマンドで、-d オプションの後にインストールしたいディストリビューション名を指定します。このディストリビューション名は、「wsl --list --online」で確認でき、これで表示されるリストの”NAME”(左側の列)を指定します。Debianの場合は「wsl --install -d Debian」となります。

上の画像は、既定のUbuntuをインストールした後、Debianをインストールした例です。「wsl -l -v」で、2つのディストリビューションがインストールされていることが確認できます。

このように、複数のディストリビューションをインストールして使い分けることもできます。Debianを起動するときは、Windows スタートメニューから「Debian …」を選択、Ubuntuを起動するときは同様に「Ubuntu …」を選択すればOKです。

参考リンク

Windows Subsystem for Linux - Wikipedia
【朗報】ついにWindows Server 2022で「WSL 2」が動くようになったよ!――インストール方法を詳細解説
これまでWindows Server 2022では利用できなかった、本物のLinuxカーネルベースで動く「WSL 2」が、ユーザーからのフィードバックに応える形で、2022年6月の累積更新プログラム(Bリリース)で利用可能になりました。

おわりに

今回の記事は以上です。

当サイトでは、ITインフラ関連の知識やノウハウをメインに紹介しています。下の関連記事にも役立つ情報があるかもしれませんので、ぜひご覧下さい。

また、知識やノウハウを効率的に学ぶ方法として、Udemy の「ながらセミナーもおすすめです。三日坊主にならず、普段の生活の中でスキルアップする方法です。これについては下の記事で紹介していますので、良ければご覧下さい。

もとだて
もとだて

最後まで読んでいただき、ありがとうございました。

フィードバック

コメント

タイトルとURLをコピーしました