WSL 開発環境を設定するためのベスト プラクティスへのステップ バイ ステップ ガイド コマンドを実行して、Ubuntu を使用する既定の Bash シェルをインストールする方法、他の Linux ディストリビューションをインストールするように設定できる方法、基本的な WSL コマンドを使用する方法、Visual Studio Code または Visual Studio、Git、Windows Credential Manager、MongoDB、Postgres、MySQL などのデータベースを設定する方法、GPU アクセラレーションの設定、GUI アプリの実行などを行う方法について説明します。
概要
Linux 用 Windows サブシステムは、Windows オペレーティング システムに付属していますが、使用を開始する前に有効にして Linux ディストリビューションをインストールする必要があります。
簡略化された --install コマンドを使用するには、Windows の最新ビルド (ビルド 20262 以上) を実行している必要があります。 バージョンとビルド番号を確認するには、Windows ロゴ キー + R キーを押して、「winver」と入力し、 [OK] を選択します。 更新するには、[設定] メニューまたは Windows 更新アシスタントを使用できます。
Ubuntu 以外の Linux ディストリビューションをインストールする場合、またはこれらの手順を手動で実行する場合は、WSL のインストール ページで詳細を参照します。
PowerShell (または Windows のコマンド プロンプト) を開き、次のコマンドを入力します。
wsl --install
--install コマンドは、次のアクションを実行します。
- オプションの WSL および仮想マシン プラットフォームのコンポーネントを有効にする
- 最新の Linux カーネルをダウンロードしてインストールする
- WSL 2 を既定値として設定する
- Ubuntu Linux ディストリビューションをダウンロードしてインストールする (再起動が必要になる場合があります)
このインストール プロセス中にコンピューターを再起動する必要があります。
PowerShell コマンド ラインで wsl --install を実行中
問題が発生した場合は、インストールのトラブルシューティングに関する記事を参照します。
Linux のユーザー名とパスワードを設定する
WSL を使用して Linux ディストリビューションをインストールするプロセスが完了したら、[スタート] メニューを使用してディストリビューション (既定では Ubuntu) を開きます。 Linux ディストリビューションのユーザー名とパスワードの作成を求められます。
このユーザー名およびパスワードは、インストールする Linux ディストリビューションごとに固有であり、Windows ユーザー名とは関係ありません。
パスワードを入力するときに、画面には何も表示されないことに注意してください。 これはブラインド タイピングと呼ばれます。 入力内容が表示されません。これは完全に正常です。
ユーザーがユーザー名およびパスワードを作成すると、そのアカウントがディストリビューションの既定のユーザーとなり、起動時に自動的にサインインされます。
このアカウントは、Linux 管理者と見なされ、sudo (Super User Do) 管理コマンドを実行する能力があることを意味します。
WSL で実行されている各 Linux ディストリビューションには、独自の Linux ユーザー アカウントとパスワードがあります。 ディストリビューションの追加、再インストール、再設定を行うたびに、Linux ユーザー アカウントを構成する必要があります。
注意
WSL と一緒にインストールされた Linux ディストリビューションはユーザーごとのインストールであり、他の Windows ユーザー アカウントと共有することはできません。 ユーザー名エラーが発生した場合は、 StackExchange の Linux のユーザー名で使用できる文字に関する説明を参照します。
Ubuntu コマンド ラインで UNIX ユーザー名を入力
パスワードを変更または再設定するには、Linux ディストリビューションを開き、コマンド「passwd」を入力します。 現在のパスワードを入力するよう求められ、新しいパスワードの入力を求められたら、新しいパスワードを確認します。
Linux ディストリビューションのパスワードを忘れた場合は、次のようにします。
PowerShell を開き、コマンド
wsl -u rootを使用して、既定の WSL ディストリビューションのルートを入力します。デフォルトではないディストリビューションの忘れたパスワードを更新する必要がある場合は、
wsl -d <DistroName> -u rootコマンドを使用し、<DistroName>を目的のディストリビューション名に置き換えてください。PowerShell 内のルート レベルでお客様の WSL ディストリビューションが開いたら、コマンド
passwd <username>を使用してパスワードを更新できます。ここで、<username>は、パスワードを忘れてしまったディストリビューションのアカウントのユーザー名です。新しい UNIX パスワードを入力し、そのパスワードを確認するように求められます。 パスワードが正常に更新されたという通知が表示されたら、PowerShell 内で
exitコマンドを使用して WSL を閉じます。
パッケージの更新とアップグレード
ディストリビューションの優先パッケージ マネージャーを使用して、パッケージを定期的に更新およびアップグレードすることをお勧めします。 Ubuntu または Debian の場合は、次のコマンドを使用します。
sudo apt update && sudo apt upgrade
Windows では、Linux ディストリビューションの更新やアップグレードは自動的に行われません。 これは、ほとんどの Linux ユーザーが自分で制御することを好むタスクです。
ディストリビューションを追加する
Linux ディストリビューションを追加するには、Microsoft Store 経由、--import コマンドを使用、または独自のカスタム ディストリビューションのサイドローディングによるインストールができます。 また、企業内にカスタムWSLイメージを配布するために設定する場合もあります。
Windows Terminal のセットアップ
Windows Terminal はコマンドライン インターフェイスを持つ任意のアプリケーションを実行できます。 主な機能には、複数のタブ、ペイン、Unicode および UTF-8 文字のサポート、GPU で高速化されたテキスト レンダリング エンジン、独自のテーマを作成したり、テキスト、色、背景、およびショートカットをカスタマイズしたりする機能があります。
新しい WSL Linux ディストリビューションがインストールされるたびに、ユーザー設定に合わせてカスタマイズできる Windows Terminal内に新しいインスタンスが作成されます。
特に、複数のコマンドラインを使用する予定がある場合は、Windowsと一緒にWSLを使用することをお勧めします。 Windows Terminal のセットアップ方法や好みに合わせたカスタマイズについては、ドキュメントを参照してください。
- Microsoft Store から Windows または Windows (プレビュー) をインストールします。
- コマンド パレットを使用します
- キーボード ショートカットなどのカスタム アクション 設定して、ターミナルが好みに合わせて自然に感じるようにします
- 既定のスタートアップ プロファイルを設定します
- 外観をカスタマイズします: テーマ、配色、名前と開始ディレクトリ、背景画像など。
- ウィンドウ ペインやタブに分割された複数のコマンド ラインでターミナルを開く場合など、コマンド ライン引数を使用する方法を学習します
- 検索機能について学習します
- タブの名前変更や色付け、マウス操作の使用、"Quake モード" の有効化などの、ヒントとテクニックを見つけます
- カスタマイズされたコマンド プロンプト、SSH プロファイル、またはタブ タイトルを設定する方法に関するチュートリアルを見つけます
- カスタムターミナルギャラリー および トラブルシューティングガイド を見つける
Windows のスクリーンショット
ファイルストレージ
WSL プロジェクトを Windows エクスプローラーで開くには、「
explorer.exe .」と入力します。現在のディレクトリを開くために、必ずコマンドの最後にピリオドを追加します。
使用する予定のツールと同じオペレーティングシステムにプロジェクトファイルを格納します。
Linux ツールを使用して Linux コマンド ライン (Ubuntu、OpenSUSE など) で作業している場合、最速のパフォーマンス速度を実現するには、ファイルを WSL ファイル システムに格納します。 Windows ツールを使用して Windows コマンド ライン (PowerShell、コマンド プロンプト) で作業している場合、ファイルを Windows ファイル システムに格納します。 オペレーティング システム全体のファイルにアクセスできますが、パフォーマンスが大幅に低下する可能性があります。
たとえば、WSL プロジェクト ファイルを格納する場合は、次のとおりです。
- Linux ファイル システムのルート ディレクトリを使用します:
\\wsl$\<DistroName>\home\<UserName>\Project - Windows ファイル システムのルート ディレクトリではありません:
C:\Users\<UserName>\Projectまたは/mnt/c/Users/<UserName>/Project$
Linux ストレージを表示している Windows エクスプローラー
お気に入りのコード エディターを設定する
WSL を使用したリモート開発とデバッグを直接サポートするため、Visual Studio Code または Visual Studio を使用することをお勧めします。 Visual Studio Code を使用すると、フル機能の開発環境として WSL を使用できます。 Visual Studio は、C++ クロスプラットフォーム開発に対するネイティブ WSL サポートを提供します。
Visual Studio Code を使用する
このステップ バイ ステップ ガイドに従って、WSL での Visual Studio Code の使用を開始します。これには、リモート開発拡張機能パックのインストールが含まれます。 この拡張機能を使用すると、WSL、SSH、または開発コンテナーを実行して、Visual Studio Code のすべての機能を使用して編集およびデバッグできます。 異なる個別の開発環境間ですばやくスワップし、ローカル コンピューターへの影響を気にすることなく更新を行います。
VS Code のインストールと設定が完了したら、code . を入力して、VS Code リモート サーバーで WSL プロジェクトを開くことができます。
現在のディレクトリを開くために、必ずコマンドの最後にピリオドを追加します。
VS Code が WSL 拡張機能を表示
Visual Studio を使用する
このステップ バイ ステップ ガイドに従って、WSLを使ってC++のクロスプラットフォーム開発のためのVisual Studioを使用し始めましょう。 Visual Studio 2022 では、Windows、WSL ディストリビューション、Visual Studio の同じインスタンスからの SSH 接続で CMake プロジェクトをビルドおよびデバッグできます。
Visual Studio 2022 でターゲット システムを選択する
Git を使用してバージョン管理を設定する
このステップ バイ ステップ ガイドに従って、WSL で Git の使用を開始し、プロジェクトを Git バージョン管理システムに接続し、同時に認証に資格情報マネージャーを使用し、Git 無視ファイルを使用し、Git 行の終わりを理解して、VS Code に組み込まれている Git コマンドを使用します。
Gitのバージョンをコマンドラインで表示する
Docker を使用してリモート開発コンテナーを設定する
このステップ バイ ステップ ガイドに従って、WSL 2 上で Docker リモート コンテナーを使用を開始し、Docker Desktop for Windows を使ってプロジェクトをリモート開発コンテナーに接続しましょう。
Docker Desktop のスクリーンショット
データベースの設定
このステップバイステップガイドに従って、WSLでデータベースを始め、WSL環境内のデータベースにプロジェクトを接続します。 MySQL、PostgreSQL、MongoDB、Redis、Microsoft SQL Server、または SQLite で作業を開始します。
WSL を介して Ubuntu で MongoDB を実行する
パフォーマンスを向上させるために GPU アクセラレーションを設定する
このステップ バイ ステップ ガイドに従って、WSL で GPU を利用した機械学習の高速トレーニングを設定し、コンピューターの GPU (グラフィックス処理ユニット) を活用して負荷の高いワークロードのパフォーマンスを向上させます。
WSL で GPU アクセラレーションを実行する
基本的な WSL コマンド
WSL を使用してインストールする Linux ディストリビューションは、PowerShell または Windows コマンド プロンプト (CMD) を使用することで最適に管理できます。 WSL を使用する際に便利な基本的なコマンドの一覧については、WSL コマンド リファレンス ガイドを参照します。
さらに、多くのコマンドは、Windows と Linux の間で相互運用可能です。 いくつかの例を次に示します。
Windows コマンド ラインから Linux ツール実行する: PowerShell を開き、「
C:\temp>」と入力して Linuxls -laコマンドを使用してwsl ls -laのディレクトリの内容を表示します。Linux コマンドと Windows コマンドを混在させる: この例では、Linux コマンド
ls -laを使用してディレクトリ内のファイルを一覧表示します。次に、PowerShell コマンドfindstrを使用して "git" を含む単語の結果をフィルター処理します。wsl ls -la | findstr "git"と実行します。 これも、Windows のdirコマンドと Linux のgrepコマンドを混ぜてdir | wsl grep gitとして実行できます。WSL コマンド ラインから直接 Windows ツールを実行する:
<tool-name>.exeを実行します。たとえば、.bashrc ファイル (Linux コマンド ラインが起動されるたびに実行されるシェル スクリプト) を開く場合は、「notepad.exe .bashrc」と入力します。Linux Grep ツールを使用して Windows ipconfig.exe を実行する: Bash から
ipconfig.exe | grep IPv4 | cut -d: -f2コマンドを入力するか、PowerShell からipconfig.exe | wsl grep IPv4 | wsl cut -d: -f2を入力します。この例では、Windows ファイル システムで ipconfig ツールを使って現在の TCP/IP ネットワーク構成の値を表示した後、Linux ツールの grep を使って IPv4 の結果のみにフィルター処理する方法を示します。
外部ドライブまたは USB をマウントする
このステップ バイ ステップ ガイドに従って、WSL 2 で Linux ディスクのマウントを開始します。
WSL マウント コマンドのスクリーンショット
Linux GUI アプリを実行する
WSL で Linux GUI アプリを設定して実行する方法については、このチュートリアルに従ってください。
その他のリソース
- Windows での開発環境の設定: React、Python、NodeJS、Vue など、優先する言語またはフレームワーク用に開発環境を設定する方法について学習します。
- トラブルシューティング: 一般的な問題、バグを報告する場所、新機能をリクエストする場所、ドキュメントに投稿する方法を見つけます。
- FAQ: よく寄せられる質問の一覧を見つけます。
- リリース ノート: WSL リリース ノートで、過去のビルドの更新プログラムの履歴を確認します。 WSL Linux カーネルのリリース ノートも参照できます。
Windows Subsystem for Linux