WSL 2:ローカルホスト、カスタムカーネルなどに接続する
Windows 10ビルド18917のリリースに伴い、MicrosoftはWSL2をLinux2のWindowsサブシステムであるInsiderに導入しました。 これは、完全なシステムコール互換性を可能にするWindowsを備えた実際のLinuxカーネルを出荷します。 LinuxカーネルがWindowsに同梱されるのはこれが初めてです。 Windows 10ビルド18945は、WSL2機能にさらに優れた改善を加えています。
WSL 2は、Linux用のWindowsサブシステムがWindows上でELF64Linuxバイナリを実行できるようにするアーキテクチャの新しいバージョンです。 この新しいアーキテクチャは、これらのLinuxバイナリがWindowsおよびコンピュータと相互作用する方法を変更します ハードウェアですが、WSL 1(現在広く利用可能なもの)と同じユーザーエクスペリエンスを提供します バージョン)。
広告
使用する ローカルホスト
WindowsからLinuxアプリケーションに接続するには
WSL 2で最初にリリースされたビルドでは、リモートIPアドレスを介してネットワークアプリケーションにアクセスする必要がありました。 これは修正する優先順位リストの上位にあると述べたので、 Linuxネットワークアプリにアクセスする機能を提供することで、このプロセスをすでに開始しています とウィンドウズ ローカルホスト
.
将来的には、LinuxからWindowsネットワークアプリケーションにアクセスできるようにする必要があります。 ローカルホスト
同様に。 ウェブ開発者がブラウザでウェブサイトにアクセスするなど、最も一般的なネットワークのユースケースとして、WindowsのLinuxアプリを優先しました。 この分野でのさらなる改善にご期待ください!
WSLグローバル構成
Insider Build 17093以降、次のことが可能になりました。 を使用してWSLディストリビューションを構成する wsl.conf
開始するには、という新しいファイルを作成します .wslconfig
ユーザーフォルダ内( C:\ Users \
どこ Windowsのログイン名です)。 NS .wslconfig
ファイルはモデル化されています INIファイル、.gitconfigと同じです。
いくつかの初期構成オプションを追加しました。このビルドで追加されたものの完全なリストを見つけることができます ここ. 最もエキサイティングなのは、カスタムカーネルを指定することです!
WSL2でカスタムカーネルを使用する
私たち LinuxカーネルにWSL2を提供し、Windowsに同梱されています. ただし、特定のカーネルモジュールを使用するなど、WSL2ディストリビューションに電力を供給する特定のカーネルが必要な場合があります。 これで、 カーネル
のオプション .wslconfig
マシン上のカーネルへのパスを指定するファイル。そのカーネルは、起動時にWSL 2VMにロードされます。 オプションが指定されていない場合は、WSL2の一部としてWindowsに付属しているLinuxカーネルの使用に戻ります。
その他の変更
- [WSL2] localhost:portを使用して、ホストからWSL2のリスニングtcpソケットにアクセスできるようにします。
- [WSL2]インストール/変換の失敗の修正と将来の問題を追跡するための追加の診断[GH4105]
- [WSL2] WSL2ネットワークの問題の診断可能性を改善します
- [WSL2]カーネルバージョンを4.19.55に更新
- [WSL2] dockerに必要な構成オプションでカーネルを更新します[GH4165]
- [WSL2]軽量ユーティリティVMに割り当てられるCPUの数をホストと同じになるように増やします(以前はカーネル構成のCONFIG_NR_CPUSによって8に制限されていました)[GH 4137]
- [WSL2] WSL2軽量VMのスワップファイルを作成します
- [WSL2] \\ wsl $ \ distro(sshfsなど)を介してユーザーマウントを表示できるようにする[GH 4172]
- [WSL2] 9pファイルシステムのパフォーマンスを改善
- [WSL2] vhdACLが無制限に拡張されないようにします[GH4126]
- [WSL2] squashfsとxt_conntrackをサポートするようにカーネル構成を更新します[GH4107、4123]
- [WSL2] interop.enabled / etc / wsl.confオプションの修正[GH4140]
- [WSL2]ファイルシステムがEAをサポートしていない場合、ENOTSUPを返します
- [WSL2] CopyFileが\\ wsl $でハングする問題を修正
- デフォルトのumaskを0022に切り替え、filesystem.umask設定を/etc/wsl.confに追加します
- シンボリックリンクを適切に解決するようにwslpathを修正しました。これは、19h1でリグレッションが発生しました[GH 4078]
- WSL2設定を微調整するための%UserProfile%.wslconfigファイルを導入します
[wsl2] カーネル= #カスタムLinuxカーネルへの絶対Windowsパス。 メモリ= #WSL2VMに割り当てるメモリの量。 プロセッサー= #WSL2VMに割り当てるプロセッサの数。 スワップ= #WSL2VMに追加するスワップスペースの量。 スワップファイルがない場合は0。 swapFile = #スワップvhdへのWindowsの絶対パス。 localhostForwarding = #WSL2 VMのワイルドカードまたはlocalhostにバインドされたポートを、ホストからlocalhost:port(デフォルトはtrue)を介して接続可能にするかどうかを指定するブール値。 # エントリは、C:\\ Users \\ Ben \\ kernelのように、円記号がエスケープされた絶対Windowsパスである必要があります。 # エントリは、サイズの後に単位を続ける必要があります(例:8GBまたは512MB)
WSL2について詳しく知ることができます ここ.
インストールに興味がある場合は、こちらを参照してください 公式文書.
ソース: マイクロソフト