WSL2でLinuxを始める手順|インストールから基本コマンドまで初心者向け解説

宮崎智広 この記事の監修:宮崎智広(Linux実務・教育歴20年以上・受講者3,100名超)
HOMELinux技術 リナックスマスター.JP(Linuxマスター.JP)【Linux入門】初心者のための基礎知識・講座 > WSL2でLinuxを始める手順|インストールから基本コマンドまで初心者向け解説
「Linuxって、サーバーで使うものでしょ?自分には関係ない。」
そう思っていませんか?

実は今のWindows 10・11には、PCを買い替えたり仮想マシンを用意したりしなくても、数分でLinux環境が動かせる仕組みが標準で入っています。それが WSL2(Windows Subsystem for Linux 2) です。

この記事では、Linuxを一度も使ったことがない方を対象に、WSL2のインストールから基本コマンドの実行まで、実際の画面イメージを交えながらステップごとに解説します。
さらに、ApacheやMySQLなどのサーバーをWSL2上で起動し、本格的なローカル開発環境を整えるところまで解説します。
読み終えたころには、あなたのWindowsパソコンの中でLinuxが動いているはずです。

動作確認環境: Windows 11 + Ubuntu 24.04 LTS(WSL2)

この記事のポイント

・WSL2はWindows上でLinuxをネイティブ動作させる公式機能
・インストールはコマンド1行で完了、再起動のみで使える
・Ubuntu 24.04 LTSが自動でセットアップされ、即日コマンド練習が可能
・ls、cd、cat など現場で使われる基本コマンドを実際に確認できる
・Ubuntu 22.04以降ではsystemdが使え、本番環境と同じサービス管理も体験できる
・MySQLもWSL2上にインストールでき、WordPressやWebアプリのローカル開発環境が完結する


「このままじゃマズい」と感じていませんか?
参考書を開く気力もない、同年代に取り残される不安——
でも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
図解60P/登録10秒/解除も3秒 / 詳細はこちら

WSL2とは何か?なぜ今これが注目されているのか

WSL2は、Microsoftが開発した「Windows上でLinuxをそのまま動かす」技術です。

従来、WindowsでLinuxを使う方法は主に3つありました。

仮想マシン(VirtualBox / VMware):設定が複雑で、PCスペックも必要
Dual Boot(デュアルブート):再起動が必要で、切り替えが面倒
VPS・クラウドサーバー:費用がかかり、初心者には敷居が高い

WSL2はこの3つの欠点を一気に解決します。
仮想マシンのように重くなく、デュアルブートのように再起動も不要。コストゼロで、WindowsのファイルエクスプローラーからそのままLinuxのファイルにアクセスできます。
方法 準備のしやすさ 動作の速さ コスト
WSL2 非常に簡単 速い 無料
仮想マシン やや複雑 重め 無料(ソフト)
Dual Boot 複雑 速い 無料
VPS 簡単 速い 月額費用あり
初心者が最初に触れるLinux環境としては、現時点でWSL2が最も手軽な選択肢です。

WSL1とWSL2の主な違い
WSL2はWSL(バージョン1)の後継です。WSL1はLinuxのシステムコールをWindowsのAPIに変換する方式だったため、一部の動作に制限がありました。WSL2では、Microsoftが開発した軽量仮想マシン上で本物のLinuxカーネルが動くため、完全なシステムコール互換と高速なファイルI/Oを実現しています。

さらに、Ubuntu 22.04以降のWSL2ではsystemd(サービス管理デーモン)が標準で有効になっています。これにより、systemctlコマンドを使ったApache・Nginx・MySQLなどのサービス管理を、本番サーバーと同じ感覚で練習できます。「LinuxをWSL2で学ぶ」価値はますます高まっています。

WSL2で何ができる?具体的な活用シーン
WSL2は「コマンドを学ぶだけ」の環境ではありません。実務で役立つ次のような場面に使えます。

Webサーバー(Apache / Nginx)の動作確認:本番に近い構成をローカルで検証できる
データベース(MySQL / MariaDB)の構築:WordPressやWebアプリのローカル開発環境に使える
シェルスクリプトの作成・テスト:Windows上でサーバー向けスクリプトを安全に開発できる
Dockerの利用:Docker Desktop for WindowsはWSL2バックエンドで動作し、コンテナ開発の入口になる

「とりあえず動かしてみたい」から「本番と同じ環境で開発したい」まで、WSL2ひとつで幅広くカバーできます。

WSL2を使うための動作要件

インストール前に、お使いのパソコンが対応しているか確認しましょう。

OS:Windows 10 バージョン2004以降(ビルド19041以降)、またはWindows 11
CPU:64ビット対応(現在販売されているPCはほぼ対応済み)
メモリ:4GB以上推奨(8GB以上あると快適。ApacheとMySQLを同時に動かす場合は8GB推奨)
空きディスク容量:5GB以上(Ubuntu本体+パッケージ分。MySQLもインストールする場合は10GB以上推奨)
BIOS設定:仮想化(Virtualization / VT-x)が有効になっていること

Windowsのバージョンは、スタートメニューで「winver」と入力して確認できます。
「バージョン 2004」または「21H2」などと表示されていれば対象です。

BIOS仮想化の確認方法
BIOSでの仮想化設定を確認する前に、タスクマネージャー(Ctrl+Shift+Esc)→「パフォーマンス」→「CPU」タブを開いてみてください。「仮想化:有効」と表示されていれば問題ありません。
「無効」と表示されている場合は、パソコンの電源を入れる際にDel/F2/F10キーを押してBIOS設定画面に入り、「Virtualization」または「SVM Mode」を「Enabled」に変更してください。設定項目の場所はメーカー・機種によって異なります。

WSL2のインストール手順

【注意】 インストール作業には管理者権限が必要です。会社のPCで試す場合は、IT部門の許可を取ってから実施してください。

1. Windows Terminalを用意する(推奨)

作業の前に、コマンドを打ちやすい「Windows Terminal」を用意しておくことをおすすめします。Microsoft Storeから無料で入手できます。PowerShell・コマンドプロンプト・Ubuntuのターミナルをタブで切り替えられるため、WSL2導入後も長く活用できます。

Windows 11では標準で搭載されています。Windows 10の場合はMicrosoft Storeで「Windows Terminal」と検索してインストールしてください。

2. PowerShellを管理者として開く

スタートボタンを右クリックして「Windows PowerShell(管理者)」または「ターミナル(管理者)」を選択します。
「このアプリがデバイスに変更を加えることを許可しますか?」と表示されたら「はい」をクリックします。

3. コマンド1行でインストールする

PowerShellに以下のコマンドをそのまま貼り付けて、Enterキーを押します。

wsl --install

このコマンドだけで、以下がすべて自動で実行されます。

・WSL機能の有効化
・仮想マシンプラットフォームの有効化
・Ubuntu(最新LTS版)のダウンロードとインストール

ダウンロードには数分かかります。完了したらパソコンを再起動してください。

ディストリビューションを指定してインストールする場合
Ubuntu 24.04 LTSを明示的に指定したい場合は以下のコマンドを使います。

# Ubuntu 24.04 LTSを指定してインストール wsl --install -d Ubuntu-24.04 # インストール可能なディストリビューション一覧を確認 wsl --list --online

4. 再起動後にユーザー設定をする

再起動後、Ubuntuのターミナルが自動で起動します。起動しない場合はスタートメニューで「Ubuntu」と検索して開きます。

以下のような画面が表示されます。

Installing, this may take a few minutes... 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:

ここで入力するのはLinux用のユーザー名とパスワードです。Windowsのアカウントとは別物なので、わかりやすい名前で問題ありません(例:「ubuntu」「tomohiro」など)。

パスワードは入力しても画面に表示されません(セキュリティ上の仕様)。落ち着いて入力してEnterを押してください。

5. インストール確認

ユーザー設定が完了すると、以下のようなプロンプトが表示されます。これがLinuxのコマンドラインです。

tomohiro@PC-NAME:~$

「@」の前がユーザー名、後ろがマシン名、「~」は現在のディレクトリ(ホームディレクトリ)を表します。

念のためバージョンを確認してみましょう。

# WSLのバージョン確認(WindowsのPowerShellまたはコマンドプロンプトで実行) wsl --list --verbose

実行結果の例:

NAME STATE VERSION * Ubuntu Running 2

「VERSION」が「2」と表示されていれば、WSL2として正しく動いています。

基本的なLinuxコマンドを実際に使ってみる

環境が整ったら、実際にコマンドを打ってみましょう。Linuxの操作はすべてコマンドが基本です。

1. 現在地を確認する:pwdコマンド

pwd

実行結果の例:

/home/tomohiro

「pwd」は「Print Working Directory(現在の作業ディレクトリを表示する)」の略で、今自分がいるディレクトリ(フォルダ)のパスを表示します。
「/home/ユーザー名」がLinuxのホームディレクトリです。Windowsで言う「C:¥Users¥ユーザー名」に相当します。

2. ファイルやフォルダを一覧表示する:lsコマンド

# 現在のディレクトリの内容を表示 ls # 詳細情報(サイズ・権限・日時)を表示 ls -l # 隠しファイルも含めて表示 ls -la

実行結果の例(ls -laの場合):

total 28 drwxr-x--- 3 tomohiro tomohiro 4096 Apr 4 09:15 . drwxr-xr-x 3 root root 4096 Apr 4 09:10 .. -rw-r--r-- 1 tomohiro tomohiro 220 Apr 4 09:10 .bash_logout -rw-r--r-- 1 tomohiro tomohiro 3526 Apr 4 09:10 .bashrc -rw-r--r-- 1 tomohiro tomohiro 807 Apr 4 09:10 .profile drwxr-xr-x 2 tomohiro tomohiro 4096 Apr 4 09:15 .ssh

「.」で始まるファイルは隠しファイルです(設定ファイルなどに使われます)。

3. ディレクトリを移動する:cdコマンド

# ホームディレクトリに移動 cd ~ # 1つ上の階層に移動 cd .. # /tmp ディレクトリに移動 cd /tmp

「cd」は「Change Directory(ディレクトリを変える)」の略です。移動したあとに「pwd」で現在地を確認するくせをつけると、ディレクトリの感覚が身に付きます。

4. ディレクトリを作成する:mkdirコマンド

# work という名前のディレクトリを作成 mkdir work # 複数の階層をまとめて作成(-p オプション) mkdir -p projects/linux/practice

「mkdir」は「Make Directory(ディレクトリを作る)」の略です。-pオプションを使うと、途中の階層が存在しない場合でも一括で作成できます。

5. ファイルを作成して内容を確認する:touchとcatコマンド

# test.txt という空ファイルを作成 touch test.txt # ファイルに文字を書き込む echo "こんにちは、Linux!" > test.txt # ファイルの内容を表示する cat test.txt

実行結果の例:

こんにちは、Linux!

6. コマンドのマニュアルを確認する:manコマンド

コマンドの使い方がわからなくなったときは、man(マニュアル)コマンドが頼りになります。現場でも実務でも、知らないオプションを調べるときに使います。

# ls コマンドのマニュアルを表示 man ls

マニュアル画面はスペースキーで次ページ、「q」キーで終了します。英語で書かれていますが、オプションの意味を調べるときに役立ちます。

7. パッケージをインストールする:sudo apt コマンド

WSL2(Ubuntu)では、sudo aptコマンドを使ってソフトウェアをインストールします。現場でも必ず使う基本コマンドで、Linuxスキルの土台となります。

# apt updateでパッケージリストを最新化する sudo apt update # apt installでパッケージをインストールする(-yで確認をスキップ) sudo apt install -y curl # インストール済みのパッケージを最新バージョンに更新する sudo apt upgrade -y

sudoは「スーパーユーザー(管理者)として実行する」コマンドです。aptはDebian/Ubuntu系Linuxのパッケージ管理ツール(「ソフトウェアのインストーラー」)で、apt updateでリスト更新、apt install パッケージ名でインストールできます。

インストール後にパスワードを求められたら、Ubuntu起動時に設定したユーザーパスワードを入力してください。初回実行時は「[sudo] password for ユーザー名:」と表示されます。

WindowsのファイルをWSL2から扱う方法

WSL2の便利な点のひとつが、WindowsのファイルシステムにそのままLinuxコマンドでアクセスできることです。

Windowsの「Cドライブ」は、WSL2の中から次のパスで参照できます。

# WindowsのCドライブ直下を表示 ls /mnt/c/ # WindowsのデスクトップフォルダをLinuxコマンドで表示 ls /mnt/c/Users/YourWindowsUsername/Desktop/

逆に、WindowsのエクスプローラーからもWSL2内のファイルにアクセスできます。
エクスプローラーのアドレスバーに「\wsl$\Ubuntu」と入力すると、Linuxのファイルシステムがフォルダとして表示されます。

WSL2のIPアドレスを確認する
WSL2は起動するたびにIPアドレスが変わることがあります。現在のIPアドレスは次のコマンドで確認できます。

# WSL2自身のIPアドレスを確認 hostname -I

実行結果の例:

172.24.18.55

このIPアドレスは、WSL2上でWebサーバーを起動したあとにWindowsのブラウザからアクセスするときに使います。

VS Codeとの連携(開発効率が大幅に向上する)
VS Code(Visual Studio Code)の「Remote - WSL」拡張機能を使うと、Windowsから直接WSL2内のファイルをGUIで編集できるようになります。Ubuntuターミナルから次のコマンドを実行するだけで接続できます。

# WSL2内のカレントディレクトリをVS Codeで開く code .

初回実行時にVS Code側へ「Remote - WSL」拡張機能が自動でインストールされます。Windowsの使い慣れたエディタでLinuxファイルをそのまま快適に編集できる環境が整います。

WSL2でLinuxサービスを起動する(Ubuntu 22.04以降)

Ubuntu 22.04以降のWSL2ではsystemdが標準で有効になっています。本番サーバーで使うsystemctlコマンドがそのまま動くため、Webサーバーやデータベースの運用を実際の環境に近い形で学べます。

1. ApacheでWebサーバーを起動する

試しにApache(Webサーバー)をWSL2上で動かしてみましょう。

# パッケージ情報を更新してApacheをインストールする sudo apt update sudo apt install apache2 -y # Apacheを起動する sudo systemctl start apache2 # 起動状態を確認する sudo systemctl status apache2

実行結果の例:

* apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; disabled; preset: enabled) Active: active (running) since Sun 2026-06-01 10:15:33 JST; 2s ago

Active: active (running) と表示されればApacheが起動しています。hostname -Iで確認したWSL2のIPアドレスをWindowsのブラウザに入力すると、Apacheのテストページが表示されます。

2. MySQLデータベースサーバーを起動する

Apacheに続いて、MySQLデータベースサーバーも試してみましょう。WordPressをはじめとするWebアプリケーションのローカル開発環境では、データベースが不可欠です。WSL2があれば費用ゼロで本番と同じ構成を手元に再現できます。

# apt updateでパッケージリストを更新してからmysql-serverをインストール sudo apt update sudo apt install -y mysql-server # mysqlサービスを起動する sudo systemctl start mysql # 起動状態を確認する sudo systemctl status mysql

実行結果の例:

* mysql.service - MySQL Community Server Loaded: loaded (/lib/systemd/system/mysql.service; enabled) Active: active (running) since Tue 2026-06-10 09:18:44 JST; 1min 5s ago

Active: active (running) と表示されればMySQLが起動しています。次に初期セキュリティ設定を行います。匿名ユーザーの削除やrootのリモートログイン禁止など、本番運用でも必須の設定を一括で行えます。

# 初期セキュリティ設定(匿名ユーザー削除・rootのリモートログイン禁止など) sudo mysql_secure_installation

設定後は sudo mysql でrootとしてMySQLにログインできます。Apache・MySQLをWSL2上でそれぞれ起動できれば、ローカルでのLAMP環境(Linux・Apache・MySQL・PHP)構築の土台が完成します。

このように、WSL2があれば費用ゼロ・再起動なしで本番に近いLinuxサーバー運用を体験できます。

よくあるトラブルと対処法

「wsl --install」がエラーになる

「仮想化が無効です」というエラーが出た場合は、BIOSの設定で仮想化(Intel VT-x / AMD-V)を有効にする必要があります。パソコンの電源を入れる際にDel/F2/F10キーを押してBIOS設定画面に入り、「Virtualization」や「SVM Mode」をEnabledに変更してください。設定項目の場所はメーカー・機種によって異なります。

Ubuntuの起動時に「WslRegisterDistribution failed」と出る

Windows Updateが最新でない場合に起こることがあります。Windowsの「設定」→「Windows Update」から最新の更新プログラムをすべて適用してから、もう一度インストールを試みてください。

「systemctl: command not found」と出る

WSL2のバージョンが古い、またはUbuntu 20.04以前を使用している場合、systemdが無効になっていることがあります。/etc/wsl.confを作成して以下の設定を追加し、WSLを再起動してください。

# /etc/wsl.conf にsystemd有効化設定を追加する sudo bash -c 'printf "[boot]\nsystemd=true\n" >> /etc/wsl.conf'

設定後、PowerShellから以下を実行してWSLを再起動します。

# WSLを完全に停止してから再起動(PowerShellで実行) wsl --shutdown

その後Ubuntuを再起動すればsystemctlが使えるようになります。

日本語が文字化けする

WSL2のターミナルで日本語が正しく表示されない場合は、Windows Terminalアプリ(Microsoft Storeから無料でインストール可能)の使用をおすすめします。フォントも自動で対応し、日本語表示が安定します。

それでも文字化けが続く場合は、以下のコマンドでロケール設定をUTF-8に変更してください。

# ロケール設定を確認する locale # UTF-8ロケールを設定する(~/.bashrc に追記して即時反映) echo 'export LANG=ja_JP.UTF-8' >> ~/.bashrc source ~/.bashrc

MySQLが起動しない・接続できない

WSL2上でMySQLが起動しない場合は、まずsystemdが有効になっているか確認してください(「systemctl: command not found」と出る場合は上記の設定を先に実施してください)。起動できているのに接続できない場合は、以下で状態を確認します。

# mysqlサービスの状態を確認する sudo systemctl status mysql # MySQLが3306番ポートでリッスンしているか確認 sudo ss -tlnp | grep 3306

Ubuntu 24.04のMySQL 8.0では、rootユーザーがデフォルトでauth_socket認証(OSのユーザー認証と連動する仕組み)を使っているため、通常のパスワード認証ではなくsudo mysqlコマンドでログインする必要があります。

次のステップ:LinuxスキルをさらにUPさせるには

WSL2でLinuxが動かせたら、次は実際のコマンドをひとつひとつ深く理解していく段階です。

以下の記事が参考になります。

Linuxのディレクトリ構造を解説|/home・/etc・/varの役割とは
ApacheのタイムアウトをLinuxで設定・確認する方法
Linuxでポート番号の状態を確認するコマンド|ss/lsofの使い方

WSL2でApacheやMySQLを動かせたら、次はNginxやPHPの組み合わせ、さらにはDockerを使ったコンテナ型の開発環境へと発展できます。

コマンドを「覚えようとする」のではなく、「実際に使いながら慣れる」ことが上達の近道です。WSL2があれば、いつでも試せる環境が手元にあります。ぜひ毎日少しずつコマンドに触れてみてください。

まとめ

やること 方法・コマンド
WSL2をインストールする wsl --install(管理者PowerShellで実行)
バージョンを確認する wsl --list --verbose
現在のディレクトリを確認する pwd
ファイル一覧を表示する ls -la
ディレクトリを移動する cd ディレクトリ名
ディレクトリを作成する mkdir ディレクトリ名
ファイルの内容を確認する cat ファイル名
パッケージリストを更新する sudo apt update
パッケージをインストールする sudo apt install -y パッケージ名
WindowsのCドライブにアクセスする ls /mnt/c/
WSL2のIPアドレスを確認する hostname -I
Apacheを起動する sudo systemctl start apache2
MySQLを起動する sudo systemctl start mysql
MySQLにrootでログインする sudo mysql
WSLを完全に停止する wsl --shutdown(PowerShellで実行)
現場で通用する安全なLinuxサーバー構築の「型」を体系的に身につけたい方へ、
無料の「Linuxサーバー構築入門マニュアル(図解60ページ)」をプレゼントしています。
コマンドを「なんとなく打つ」段階から卒業したい方は、ぜひ受け取ってみてください。
無料マニュアルを受け取る >>

無料メルマガで学習を続ける

Linuxの実践スキルをメールで毎週お届け。
登録は1分、解除もいつでも可。

登録無料・いつでも解除できます

暗記不要・1時間後にはサーバーが動く

3,100名以上が実践した「型」を無料で公開中

プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。

登録10秒/合わなければ解除3秒 / 詳細はこちら

Linux無料マニュアル(図解60P) 名前とメールで30秒登録
宮崎 智広

この記事を書いた人

宮崎 智広(みやざき ともひろ)

株式会社イーネットマーキュリー代表。現役のLinuxサーバー管理者として20年以上の実務経験を持ち、これまでに累計3,100名以上のエンジニアを指導してきたLinux教育のプロフェッショナル。「現場で本当に使える技術」を体系的に伝えることをモットーに、実践型のLinuxセミナーの開催や無料マニュアルの配布を通じてLinux人材の育成に取り組んでいる。

趣味は、キャンプにカメラ、トラウト釣り。好きな食べ物は、ラーメンにお酒。休肝日が作れない、酒量を減らせないのが悩み。最近、ドラマ「フライトエンジェル」を観て涙腺が崩壊しました。