WindowsのWSL2でLinuxをやってみたら

AI開発に挑むなら、開発言語にPythonを選ぶのはもはや当たり前のことです。しかし、その開発マシンについては、かつて「MacBook一択」と言っても過言ではありませんでした。
なぜなら、AI関連のライブラリやツールの多くはLinuxベースで開発されており、それらをWindows上で動かそうとすれば、複雑なパスの解決や依存関係の競合といった「環境構築の泥沼」にハマることが多かったからです。
一方、UNIXをベースに持つmacOSは、Linux環境との親和性が極めて高く、そうした煩わしさに悩まされず開発に集中できる唯一の現実的な選択肢でした。
そんな状況に一石を投じたのが、Windows上でLinuxを動作させる仕組み「WSL(Windows Subsystem for Linux)」の登場です。Windowsユーザーに一筋の光が見えた瞬間でしたが、初期のWSL(WSL1)にはまだ超えられない壁がありました。
WSL1は、Linuxの命令をWindowsの命令へと「翻訳」して動かす仕組みであったため、特定のシステムコールに対応できず、高度なツールやライブラリが動作しないという課題が依然として残っていたのです。「便利ではあるが、本格的な開発にはあと一歩届かない」——そんなもどかしさが、Windowsが開発プラットフォームの主役になりきれない理由でもありました。
しかし、その限界を根底から打ち破ったのが「WSL2」のリリースです。
WSL2では設計が根本から刷新され、Microsoftがビルドした「本物のLinuxカーネル」がWindows上で直接動作するようになりました。これにより、Linux環境でしか動作しなかったパッケージも、ネイティブなLinuxマシンのようにシームレスに動作します。さらに、WSL1の弱点だったファイルI/Oのパフォーマンスも劇的に改善され、大量のデータを扱うAI開発にも耐えうるスループットを実現しました。
今やWindowsは、MacBookと並んできわめて有力な開発プラットフォームへと進化を遂げたのです。
本記事では、かつて環境構築の難しさからWindowsを敬遠していた方に向けて、WSL2を使ったクリーンでモダンなPython開発環境の構築手順を解説します。MacBookに匹敵するスムーズな開発体験を、あなたのWindowsマシンで今すぐ手に入れましょう。
目次
WindowsのWSL2でLinuxをやってみたら
WSL2は、Windows11の全エディションに対応しており、Windows10でも2020年5月にリリースされたバージョン 2004(ビルド 19041)以降であれば問題なく利用可能です。
キーボードの Windowsキー + R を押し、 winver と入力して実行します。表示された画面の「バージョン」や「ビルド」の数字が上記のバージョン以降であれば、WSL2を導入することができます。
Windowsの機能の有効化
Windowsの「設定」→「システム」→「オプション機能」から「Windowsのその他の機能」を選択します。「Linux用Windowsサブシステム」と「仮想マシンプラットフォーム」にチェックを入れて「OK」ボタンを押下します。

OSの再起動を行うことで、WindowsでWSLが利用可能になります。
Windows PowerShellを「管理者で実行」で起動し、以下のコマンドでWSL2をデフォルトに設定します。
PS C:\WINDOWS\system32> wsl --set-default-version 2
WSL 2 との主な違いについては、https://aka.ms/wsl2
を参照してください
この操作を正しく終了しました。
WSLのバージョンなどは以下のコマンドで確認することができます。
PS C:\WINDOWS\system32> wsl --version
WSL バージョン: 2.6.3.0
カーネル バージョン: 6.6.87.2-1
WSLg バージョン: 1.0.71
MSRDC バージョン: 1.2.6353
Direct3D バージョン: 1.611.1-81528511
DXCore バージョン: 10.0.26100.1-240331-1435.ge-release
Windows バージョン: 10.0.26200.8037
Linuxディストリビューションのインストール
次にLinuxをWSLにインストールします。利用可能なディストリビューションは、以下のコマンドで確認することができます。
PS C:\WINDOWS\system32> wsl --list --online
インストールできる有効なディストリビューションの一覧を次に示します。
'wsl.exe --install <Distro>' を使用してインストールします。
NAME FRIENDLY NAME
Ubuntu Ubuntu
Ubuntu-24.04 Ubuntu 24.04 LTS
Ubuntu-22.04 Ubuntu 22.04 LTS
Ubuntu-20.04 Ubuntu 20.04 LTS
openSUSE-Tumbleweed openSUSE Tumbleweed
openSUSE-Leap-16.0 openSUSE Leap 16.0
SUSE-Linux-Enterprise-15-SP7 SUSE Linux Enterprise 15 SP7
SUSE-Linux-Enterprise-16.0 SUSE Linux Enterprise 16.0
kali-linux Kali Linux Rolling
Debian Debian GNU/Linux
AlmaLinux-8 AlmaLinux OS 8
AlmaLinux-9 AlmaLinux OS 9
AlmaLinux-Kitten-10 AlmaLinux OS Kitten 10
AlmaLinux-10 AlmaLinux OS 10
archlinux Arch Linux
FedoraLinux-43 Fedora Linux 43
FedoraLinux-42 Fedora Linux 42
eLxr eLxr 12.12.0.0 GNU/Linux
OracleLinux_7_9 Oracle Linux 7.9
OracleLinux_8_10 Oracle Linux 8.10
OracleLinux_9_5 Oracle Linux 9.5
openSUSE-Leap-15.6 openSUSE Leap 15.6
SUSE-Linux-Enterprise-15-SP6 SUSE Linux Enterprise 15 SP6
今回はAlmaLinux10をWSLにインストールします。以下のコマンドでインストールが開始されます。
PS C:\WINDOWS\system32> wsl --install AlmaLinux-10
ダウンロードしています: AlmaLinux OS 10
インストールしています: AlmaLinux OS 10
ディストリビューションが正常にインストールされました。'wsl.exe -d AlmaLinux-10' を使用して起動できます
AlmaLinux-10 を起動しています...
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: user
New password:
Retype new password:
passwd: password updated successfully
[user@NOTE-PC system32]$ exit
exit
途中でユーザーネームとパスワードを入力し、インストールが完了します。
インストール完了後は既にLinuxに接続された状態になっていますので、設定を確認するため、一度 exit コマンドでWindows側に戻ります
[user@NOTE-PC system32]$ exit
exit
インストールされたディストリビューションを確認するため、以下のコマンドを実行します。
PS C:\WINDOWS\system32> wsl --list --verbose
NAME STATE VERSION
* AlmaLinux-10 Stopped 2
Linuxの起動
WSL2でLinuxを起動します。
PS C:\WINDOWS\system32> wsl --distribution AlmaLinux-10
[user@NOTE-PC system32]$
ユーザーのディレクトリに移動してファイルを確認します。
[user@NOTE-PC system32]$ cd
[user@NOTE-PC ~]$ ls -la
total 24
drwx------ 2 user user 4096 Mar 21 21:52 .
drwxr-xr-x 3 root root 4096 Mar 21 21:45 ..
-rw------- 1 user user 65 Mar 21 22:01 .bash_history
-rw-r--r-- 1 user user 18 Oct 29 2024 .bash_logout
-rw-r--r-- 1 user user 144 Oct 29 2024 .bash_profile
-rw-r--r-- 1 user user 522 Oct 29 2024 .bashrc
Linuxの環境設定ファイルがユーザのディレクトリに配置されていることが確認できます。
Linuxの停止
Linuxの停止は以下のとおりです。
[user@NOTE-PC ~]$ exit
logout
PS C:\WINDOWS\system32> wsl --list --verbose
NAME STATE VERSION
* AlmaLinux-10 Running 2
以下のコマンドを実行することで起動中のすべてのLinuxを停止します。
PS C:\WINDOWS\system32> wsl --shutdown
PS C:\WINDOWS\system32> wsl --list --verbose
NAME STATE VERSION
* AlmaLinux-10 Stopped 2
Linuxディストリビューションの削除
Linuxの削除は以下のとおりです。
PS C:\WINDOWS\system32> wsl --unregister AlmaLinux-10
登録解除。
この操作を正しく終了しました。
PS C:\WINDOWS\system32> wsl --list --verbose
Linux 用 Windows サブシステムにインストールされているディストリビューションはありません。
この問題を解決するには、以下の手順に従ってディストリビューションをインストールしてください:
'wsl.exe --list --online' を使用して利用可能な配布を一覧表示する
および 'wsl.exe --install <Distro>' を使用してインストールしてください。
このコマンドによって、ディストリビューションの登録が解除され、ルートファイルシステムが削除されます。削除されたルートファイルシステムは復元できませんので注意してください。
Linux開発環境を構築する
ここからは、WSL2にVSCodeを連携させて、開発環境を整えていきます。前述した手順にしたがって、WSL2にディストリビューションをインストールし、Linuxを起動してください。
VSCodeのWSL拡張機能の設定
WSL2を起動しているWindows端末にMicrosoft VSCodeをインストールして起動します。
「拡張機能」の検索入力欄に「wsl」と入力し、表示されたWSL拡張機能の「インストール」ボタンを押下します。

VSCodeの画面左下にある「リモートウィンドウを開きます」をクリックしたのち、画面上部の選択肢から「WSLへの接続」を選択します。

WSL2のリモートウィンドウが表示され、インストールしたディストリビューションのLinuxへのリモート接続が開始されます。
接続が完了すると、VS Codeのエディタ上で編集した内容が、リアルタイムでLinuxのファイルシステムに反映されます。Windowsの操作感そのままに、中身は完全なLinux環境として利用できるのがWSL2を利用する最大のメリットです。
Python拡張機能のインストール
次にPythonの拡張機能もあわせてインストールしておきます。WSL2のLinuxリモート接続されていることを確認して、「拡張機能」の検索入力欄に「Python」と入力し、表示されたWSL拡張機能の「WSL:<ディストリビューション名>にインストールする」ボタンを押下します。これで、Linux上のPythonをVSCodeから制御したりすることができるようになります。
Windows側にPythonが入っていなくても、Linux内のPython環境だけで開発が可能になります。まさに「クリーンでモダンな開発環境」の完成です。

リモート接続の切断
VSCodeの画面左下にある接続中のリモートウィンドウ名(ここでは「WSL2:AlmaLinux-10」と表示されている。)をクリックし、画面上部の選択肢から「リモート接続を終了する」を選択すると、WSL2とのリモート接続が切断されます。

まとめ:Windowsを「最強のAI開発マシン」に変える第一歩
いかがでしたでしょうか。
かつては環境構築の難しさから「AI開発ならMacBook一択」と言われていた時代もありましたが、WSL2の登場によってその常識は過去のものとなりました。
現在のWSL2を活用すれば、Windowsの使い慣れた操作感や利便性を保ったまま、MacBookにも引けを取らない強力かつ柔軟なLinux開発プラットフォームを手に入れることができます。
なお、WSL2の劇的なパフォーマンスを最大限に引き出すためには、作成したソースコードや学習データなどは必ず**Linux側のディレクトリ(/home/ユーザー名/ など)**に配置するようにしてください。Windows側のフォルダ(/mnt/c/ など)にあるファイルをLinux側から参照すると、ファイルI/Oのオーバーヘッドが大きくなり、処理速度が極端に遅くなってパフォーマンスが大幅に低下する原因となります。
この一点に気をつけるだけで、驚くほど快適な開発が可能になります。
今回は、Linuxディストリビューション(AlmaLinux 10)のWSL2へのインストールから、Microsoft VS CodeのWSL拡張機能を使ったリモート開発設定までを解説しました。
これで、あなたのWindowsマシンには「本物のLinuxカーネル」が宿り、世界中のAIエンジニアと同じ土俵に立つ準備が整いました。このクリーンでモダンな環境をベースに、存分にAI開発を体験してください。
気象データ利用のお悩みについてご相談ください
気象システムの設計製造及び運用保守にかかわる現役システムエンジニアが、気象予報士の視点で気象データを活用したビジネスアイディアの創出と課題解決のお手伝いをさせていただきます。
気象や波浪などの数値予報モデルを活用した気象予報システム開発や運用についても是非ご相談ください。


