次の方法で共有


WSL 開発環境を設定する

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 ディストリビューションをダウンロードしてインストールする (再起動が必要になる場合があります)

このインストール プロセス中にコンピューターを再起動する必要があります。

wsl --install を実行している PowerShell コマンド ライン

問題が発生した場合は、インストールのトラブルシューティングに関する記事を参照します。

Linux のユーザー名とパスワードを設定する

WSL を使用して Linux ディストリビューションをインストールするプロセスが完了したら、[スタート] メニューを使用してディストリビューション (既定では Ubuntu) を開きます。 Linux ディストリビューションのユーザー名パスワードの作成を求められます。

  • このユーザー名およびパスワードは、インストールする Linux ディストリビューションごとに固有であり、Windows ユーザー名とは関係ありません。

  • パスワードを入力するときに、画面には何も表示されないことに注意してください。 これはブラインド タイピングと呼ばれます。 入力内容が表示されません。これは完全に正常です。

  • ユーザーがユーザー名およびパスワードを作成すると、そのアカウントがディストリビューションの既定のユーザーとなり、起動時に自動的にサインインされます。

  • このアカウントは、Linux 管理者と見なされ、sudo (Super User Do) 管理コマンドを実行できます。

  • WSL で実行されている各 Linux ディストリビューションには、独自の Linux ユーザー アカウントとパスワードがあります。 ディストリビューションの追加、再インストール、再設定を行うたびに、Linux ユーザー アカウントを構成する必要があります。

Note

WSL と一緒にインストールされた Linux ディストリビューションはユーザーごとのインストールであり、他の Windows ユーザー アカウントと共有することはできません。 ユーザー名エラーが発生した場合は、 StackExchange の Linux のユーザー名で使用できる文字に関する説明を参照します。

Ubuntu コマンド ラインでの UNIX ユーザー名の入力

パスワードを変更またはリセットするには、Linux ディストリビューションを開き、コマンド「passwd」を入力します。 現在のパスワードを入力するよう求められ、新しいパスワードの入力を求められたら、新しいパスワードを確認します。

Linux ディストリビューションのパスワードを忘れた場合は、次のようにします。

  1. PowerShell を開き、コマンド wsl -u root を使用して、既定の WSL ディストリビューションのルートを入力します。

    既定ではないディストリビューションで忘れたパスワードを更新する必要がある場合は、コマンド wsl -d Debian -u root を使用します。Debian は対象のディストリビューション名に置き換えます。

  2. PowerShell 内のルート レベルでお客様の WSL ディストリビューションが開いたら、コマンド passwd <username> を使用してパスワードを更新できます。ここで、<username> は、パスワードを忘れてしまったディストリビューションのアカウントのユーザー名です。

  3. 新しい UNIX パスワードを入力し、そのパスワードを確認するように求められます。 パスワードが正常に更新されたことを示す通知が表示されたら、コマンド exit を使用して PowerShell 内の 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 Terminalで WSL を使用することをお勧めします。 次のような設定とカスタマイズについては、Windows Terminalのドキュメントを参照します。

Windows Terminal のスクリーンショット

File Storage

  • 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 のインストールと設定が完了したら、次のコマンドを入力して、VS Code リモート サーバーを使用して WSL プロジェクトを開くことができます。code .

現在のディレクトリを開くために、必ずコマンドの最後にピリオドを追加します。

WSL 拡張機能が表示された VS Code

Visual Studio を使用する

このステップ バイ ステップ ガイドに従って、C++ クロスプラットフォーム開発向けに WSL で 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 を開き、「wsl ls -la」と入力して Linux ls -la コマンドを使用して C:\temp> のディレクトリの内容を表示します。

  • 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 アプリを設定して実行する方法については、このチュートリアルに従ってください。

その他のリソース