WSL2でLinuxを使おう

WSL2(Windows Subsystem for Linux 2)はWindowsでLinuxを使える仮想化ソフトウェアです。 [仮想マシンとは?](https://bootcamp.fjord.jp/articles/8) ほとんどのWebアプリケーションはLinux上で動作します(Google, Amazon, Facebookもそうです)。すなわちWebプログラマーになるにはLinuxの学習が欠かせませんが、WSL2を使えばWindowsの中にLinuxの環境を作れてしまいます。 ![Image from Gyazo](https://i.gyazo.com/e034864372726976c6a2f8012909d404.png) 少々厄介ですがmacを買わずにLinuxが使えるので頑張って環境を整えましょう。慣れてしまえばWindowsのアプリも使えてLinuxでの開発もできる最高の環境が手に入ります。 ## WSL2のインストール Microsftの公式ドキュメントに非常にわかりやすい手順ドキュメントがあるのでその通りやりましょう。 [Windows 10 に WSL をインストールする \| Microsoft Docs](https://docs.microsoft.com/ja-jp/windows/wsl/install-win10) 注意点としては下記があります。 - **再起動**と書いてあるところではちゃんと再起動する。 - パソコンのCPUの仮想化機能が有効になっているかどうか確認する。有効にするにはBIOSで設定する必要があるが、それはメーカーによってさまざまなので自分のパソコンでのBIOSの入り方などはそれぞれググる。 - すごく古いパソコンではCPUに仮想化機能がないのでWSL2を使えない。具体的にはIntel Core 2 Duo以前。 仮想化機能が有効になっているかどうかは**タスクマネージャー**の**パフォーマンス**タブでも確認できます。 ![Image from Gyazo](https://i.gyazo.com/43fb6159ae6e3769d4cf2e062ce2d879.png) WSL2のインストールが終わればMicrosoft Storeで好きなLinuxディストリビューションを選んで1クリックでインストールできます。 ![Image from Gyazo](https://i.gyazo.com/41921014c7e3eb8246e5c724e9c98af6.png) 初回起動時に利用するユーザー名とパスワードを設定すれば今後、1クリックでLinux(この場合はDebian)をつかうことができまう。 Ubuntuが1番人気ですが、フィヨルドブートキャンプではDebianを前提としてカリキュラムが組まれているのでDebianをインストールしましょう。(複数インストールできるので両方入れても問題無しです) アンインストールは**アプリと機能**から普通のアプリと同じようにできます。Linuxの環境がごちゃごちゃになってしまったら一度アンインストールしてからまたインストールすると簡単にリセットできます。 ![Image from Gyazo](https://i.gyazo.com/f01d1a4522abbe0fc9c308bd7063ae3b.png) この時点ではまだアプリをインストールしただけで実行はされていません。 後述するWindowsTerminalでDebianのTerminalを開いたときに実行されます。 ## Windows Terminalを使おう Linuxを使うにはターミナルのソフトウェアが必要です。こちらも最近のWindowsでは素晴らしいターミナルソフトウェアがMicrosoftから出ているので使いましょう。これも公式ドキュメントに詳しいインストール方法が書いてあります。 [Windows ターミナルをインストールする](https://docs.microsoft.com/ja-jp/windows/terminal/install) Windows TerminalではWSL2でインストールしたLinux以外にもWindowsのコマンドプロンプトやPowerShellも使えます。 ![Image from Gyazo](https://i.gyazo.com/84661a357172b46ea146f31daa4807ec.png) Webアプリ開発ではもっぱらここでインストールしたLinuxばかりをつかうとおもうので起動時のデフォルトをLinux(この場合はDebian)にしておくと便利です。 ![Image from Gyazo](https://i.gyazo.com/030ebc6a6d4d4f71e9db78a9f0423634.png) ## Windows~Linux間のアクセス インストールしたLinuxへのファイルアクセスや逆のLinuxの中からWindowsへのファイルアクセスについては下記に詳しく書いてあります。 [WSL2でLinux~Windows間のファイルのやり取り](https://bootcamp.fjord.jp/articles/29)