Windowsで開発したいので、WSL2の設定をしてみた

# 公式ページの手順書を読んで設定してみた
**[Windows Subsystem for Linux Installation Guide for Windows 10](https://docs.microsoft.com/en-us/windows/wsl/install-win10)**

## まとめの３行
1. Windowsで開発するならWSL2は必須でしょ？
2. すんなり行くだろうとの期待を裏切られる
3. windowsOSの更新はそれなりに時間掛かるよ


### 1. Install the Windows Subsystem for Linux（WSLのインストール）
PowerShell管理者モードで以下のコマンドを実行

```shell
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
```

### 2. OSバージョンのチェック
キーボードで「Windowsロゴ + R」押して, 
winverと入力してOK
![コメント 2020-07-27 173605.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/9307/c9191477-a202-18d3-781d-ee6665f11f06.png)

#### バージョン2004(OSビルド 19041)より数字が小さかったら、Windowsの更新が必要
自分の例（上記画像）だと更新が必要なので、更新した

### 2.1 公式ページでバージョンアップ（Windows10 May 2020 Update）
**[Windows 10 のダウンロードはこちら](https://www.microsoft.com/ja-jp/software-download/windows10)**
[https://www.microsoft.com/ja-jp/software-download/windows10](https://www.microsoft.com/ja-jp/software-download/windows10)
![コメント 2020-07-27 173935.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/9307/fb004e0a-0dea-02c5-ff8f-601d39b99b46.png)

### 3.Enable the 'Virtual Machine Platform' optional component（VMオプションを有効化する）
PowerShell管理者モードで以下のコマンドを実行 

```shell 
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
```


### 4.Set WSL 2 as your default version(WSL2をデフォルトに設定する)
PowerShell管理者モードで以下のコマンドを実行

```shell 
wsl --set-default-version 2
```
公式にはこう書いてあるけど、自分の場合は失敗したので、後で設定する。

### 5.Install your Linux distribution of choice(MicrosoftストアでLinuxの種類を選んでインストールする)
[Microsoftストア：Linux選択はこちら](https://aka.ms/wslstore)
[https://aka.ms/wslstore](https://aka.ms/wslstore)
自分はUbuntuを選択しました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/9307/36169ac8-2d37-fead-8986-008886f39639.png)


### 6.Linuxを起動して初期設定をする
#### 6.0 と書いてあるけど、Linux（自分の場合はUbuntu）が起動しなかった
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/9307/2685168f-f42e-fde6-c91d-47da7f1f45ed.png)

ネットでエラーメッセージ検索した結果、
[https://github.com/microsoft/WSL/issues/5393#issuecomment-655960555](https://github.com/microsoft/WSL/issues/5393#issuecomment-655960555)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/9307/4cda6547-4250-6acd-ec92-d7037ee53868.png)
顔無しの人が解決したとの事。
良く知らんけど、WSL2 Linuxのカーネルアップデートが必要？？
**[上記のリンク（実体は→https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi）](https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi)** をダウンロードしてインストールしてみた。
結果↓↓↓
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/9307/9edef78f-3a29-3548-1241-65697d94c9d5.png)
動いた


##### 6.1 デフォルトのユーザー名とパスワードを設定する
こちら管理者アカウントとなるので、忘れないようにしましょう。
一応パスワードリセットは**[こちらの手順](https://docs.microsoft.com/en-us/windows/wsl/user-support#reset-your-linux-password)**で可能
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/9307/665434c3-4333-7cc1-ac6a-52465cea61da.png)
こんな感じ、パスワードは二回入力を求められるよ。
##### Linuxのアップデートを実施
```shell
sudo apt update && sudo apt upgrade
```
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/9307/069db2bf-f833-a700-6129-ec140ccd5a22.png)
`Do you want to continue?[Y/n]` と出たら、**Y**を入力して**Enter**押す
### 7.再度WSL２のデフォルト化に挑戦
```shell
wsl --set-default-version 2
```
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/9307/a3c9598c-90b0-2d02-64cc-9ed6f7185e49.png)
なぞのメッセージで成功したのか失敗したのかわからん
### 8.ちゃんと設定できたか確認しましょう
Powershellで次のコマンドを打ってください

```shell
wsl --list --verbose
```
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/9307/da78adcf-b1af-9530-6963-f12b555c90c3.png)
できたっぽい！