【だぶりゅーえすえる】

WSL とは?

💡 Windows上で「本物のLinux」を動かす
📌 このページのポイント
WSL — Windows上でLinuxを動かす Windows OS WSL(Windows Subsystem for Linux) Ubuntu apt, bash gcc, python Docker 対応 Debian apt, zsh Node.js 開発環境 他のDistro Fedora openSUSE Alpine 等 WindowsとLinuxのファイルシステムを相互アクセス可能
WSLのイメージ
ひよこ ひよこ

WSLって何がうれしいの?

ペンギン先生 ペンギン先生

WindowsでWeb開発するとき、LinuxのツールやコマンドがそのまままUbuntuで使えるよ。bash、git、Node.jsPythonDocker全てWSL内で動く。仮想マシンよりずっと軽量で起動も速い。VSCodeの「Remote - WSL」拡張を使えば、WSL内のファイルをVSCodeで直接編集できるんだ

ひよこ ひよこ

WSL1とWSL2の違いは?

ペンギン先生 ペンギン先生

WSL1はLinuxシステムコールWindowsに変換する互換レイヤー。WSL2は本物のLinuxカーネルHyper-V上で動かす。WSL2の方がファイルI/Oが高速で、Docker対応も完全。今からWSLを使うならWSL2一択だよ。「wsl --install」コマンド一発でセットアップできるよ

ひよこ ひよこ

WSLとVMの違いは?

ペンギン先生 ペンギン先生

VMは完全に独立したOS環境(GUIも含む)で、リソース消費が大きい。WSLはWindowsと統合されていて、Windowsファイルシステムにアクセスでき、メモリも動的に共有する。「Linuxの開発環境が欲しいだけ」ならWSLの方が軽量で使いやすいよ

ひよこ ひよこ

WSLの注意点は?

ペンギン先生 ペンギン先生

Windowsファイルシステム(/mnt/c/)へのアクセスはWSLのファイルシステム内に比べて遅い。プロジェクトはWSL内(~/projects/等)に置くのがベスト。②メモリ上限の設定(.wslconfigでメモリ使用量を制限しないとWindowsのメモリを食い尽くす)。③systemdは WSL2 の最新版で対応したよ

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「WSL」って出てきたら「Windows上でLinuxが使える仕組み」と思えればだいたいOK!
📖 おまけ:英語の意味
「Windows Subsystem for Linux」 = Windows用Linuxサブシステム
💬 WindowsのSubsystem(サブシステム)としてLinuxを動かす技術だよ
← 用語集にもどる