Windows は Linux サブシステムを使用して、複数の Linux を簡単にインストールします

Linux 用 Windows サブシステム

WSL

略して WSL は、Windows 10/11 上でネイティブ Linux バイナリ実行可能ファイル (ELF 形式) を実行できる互換性レイヤーです。これは Microsoft と Canonical によって共同開発されており、その目標は、純粋な Ubuntu、Debian、およびその他のイメージをユーザーのローカル コンピューターにダウンロードして解凍できるようにすることと、イメージ内のツールとユーティリティをこのサブシステム上でネイティブに実行できるようにすることです。Windows 10 2004 以降を使用している場合は、WSL2 を介してウィンドウでデスクトップ アプリケーションを実行でき、他の X サーバーをインストールする必要はありません。このサブシステムはすべての Linux ソフトウェアを実行できるわけではありませんが、ほとんどの内部コマンドの使用法を学ぶには非常に便利です。

WSL1とWSL2の違い


WSL1 と WSL2 はどちらも Windows で Linux 操作エクスペリエンスを実現できること、
起動速度が遅くないこと、メモリ消費量が比較的少ないこと、
WSL 1 は VM を使用せず、WSL 2 は自動的に保守される VM を使用すること、
WSL 1 はサポートされていないことを説明します 。 、WSL2 は Docker などのプログラムの実行をサポートしています。WSL
2 は完全な Linux カーネル呼び出しをサポートしていますが、WSL 1 はサポートしていません。WSL 2 は
Hyper-V を使用しているため、互換性のために WSL 2 と VMWare または VirtualBox を同時に実行する必要はありません。 WSL 1 は存在しません この問題;
WSL 2 は Windows のクロスオペレーティング システム ファイルでは動作できません (Windows で WSL2 にアクセスする方法は、WSL2 環境に入り、「cd ~」と入力してメイン ディレクトリに入り、次に次のように入力します) 「explorer.exe .」は、Windows ファイル マネージャー 2 のファイルで WSL にアクセスします。さらに、ファイルはネットワーク、ファイル共有などの仮想マシンを介して通信できますが、WSL 1 と Windows は同じファイル システム内にあります。 。

選択
WSL と Windows ファイル間の相互運用性と相互運用性を重視する場合は、WSL 1 の方が適しています
。VM で開発することが多く、作業環境が基本的に Linux である場合は、WSL 2 がより完璧なエクスペリエンスをもたらします。カーネルが必要な場合は、WSL 2 が最適です
。 WSL 2 でのみ使用できる機能。

準備

Window10/11 のバージョンを確認してください。内部バージョン番号が 18362 より低いバージョンは WSL をサポートしていません。winver を実行した結果: 

または、Windows コマンド プロンプトで ver コマンドを入力します。

C:\Users\hann>ver

Microsoft Windows [バージョン 10.0.23511.1000] 

Windows ターミナルが「初期インストール」状態であるかどうかを確認します。

ターミナルを開き、ショートカット キー Ctrl , (Ctrl キーとカンマ) を押して、スタートアップ設定インターフェイスを表示します。

以下の図に示すように設定し、保存して終了します。 

Linux サブシステムをインストールする

MicrosoftStore を開いて Linux を検索し、お気に入りのディストリビューションをインストールします。Ubuntu と Debian をインストールしました。

それでも正常にインストールできない場合は、次の手順を試してください。

オープンサブシステム関数

管理者として PowerShell を起動し、次のように入力して Windows サブシステム機能を有効にします。

dism.exe/online/enable-feature/featurename:Microsoft-Windows-Subsystem-Linux/all/norestart

次に、次の内容を入力して仮想マシン プラットフォーム機能を有効にします。

dism.exe/online/enable-feature/featurename:VirtualMachinePlatform/all/norestart

完了したら、コンピュータを再起動します。

Linux カーネル更新パッケージをダウンロードする

このリンクをクリックして、x64 コンピューター用の WSL2Linux カーネル更新パッケージをダウンロードします。

ダウンロードが完了したら、インストールします。

次に、PowerShell を管理者として実行し、次のように入力して WSL2 をデフォルトのバージョンとして設定します。

wsl--set-default-version2

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

インストールが成功したら、ユーザー設定を入力します。

ヘルプを見る ヘルプ

Ubuntu のヘルプ:

hann@HannYang:~$ help
GNU bash、バージョン 5.0.17(1)-release (x86_64-pc-linux-gnu)
これらのシェル コマンドは内部的に定義されています。このリストを表示するには、「help」と入力します。
「help name」と入力すると、関数「name」の詳細が表示されます。
シェル全般についてさらに詳しく知るには、`info bash' を使用してください。
このリストにないコマンドについて詳しく調べるには、`man -k' または `info' を使用してください。

Debian ヘルプ:

hann@HannYang:~$ help
GNU bash、バージョン 5.2.15(1)-release (x86_64-pc-linux-gnu)
これらのシェル コマンドは内部的に定義されています。このリストを表示するには、「help」と入力します。
「help name」と入力すると、関数「name」の詳細が表示されます。
シェル全般についてさらに詳しく知るには、`info bash' を使用してください。
このリストにないコマンドについて詳しく調べるには、`man -k' または `info' を使用してください。 

両方でリストされる内部コマンドのリストは基本的に同じです。

 job_spec [&] History [-c] [-d offset] [n] または History -an>
 ((expression)) if COMMANDS; 次にコマンド。[elif コマンド>
 . ファイル名 [引数] ジョブ [-lnprs] [jobspec ...] または jobs -x comm>
 : kill [-s sigspec | -n シグナム | -sigspec] pi>
 [ arg... ] let arg [arg ...]
 [[式]] ローカル [オプション] 名前[=値] ...
 エイリアス [-p] [名前[=値] ... ] ログアウト [n]
 bg [job_spec ...] マップファイル [-d delim] [-n count] [-O 原点] [>
 バインド [-lpsvPSVX] [-m キーマップ] [-f ファイル名] [> Popd [- n] [+N | -N]
 Break [n] printf [-v var] format [arguments]
 builtin [shell-builtin [arg ...]] Pushd [-n] [+N | -N | dir]
 caller [expr] pwd [-LP]
 case WORD in [PATTERN [|] PATTERN]...) COMMAN> read [-ers] [-a array] [-d delim] [-i text]>
 cd [-L|[-P [-e]] [-@]] [dir] readarray [-d delim] [-n count] [-O Origin]>
 command [-pVv] command [arg ...] readonly [-aAf] [name[=value] ...] または reado>
 compgen [- abcdefgjksuv] [-o オプション] [-A acti> return [n]
 complete [-abcdefgjksuv] [-pr] [-DEI] [-o op> select NAME [in WORDS ... ;] do COMMANDS; d>
 compopt [-o|+o オプション] [-DEI] [名前 ...
 続行 [n] シフト [n]
 coproc [名前] コマンド [リダイレクト] shopt [-pqsu] [-o] [optname ...]
 宣言 [-aAfFgilnrtux] [-p] [名前[=値] .> ソース ファイル名[引数]
 dirs [-clpv] [+N] [-N] サスペンド [-f]
 disown [-h] [-ar] [jobspec ... | pid ...] テスト [expr]
 echo [-neE] [arg ...] time [-p] パイプライン
 有効化 [-a] [-dnps] [-f filename] [name ...> 回
 eval [arg ...] トラップ [-lp] [[arg] signal_spec ...]
 exec [-cl] [-a name] [コマンド [引数 ...> true
 exit [n] type [-afptP] name [name . ..]
 エクスポート [-fn] [名前[=値] ...] またはエクスポート -> typeset [-aAfFgilnrtux] [-p] 名前[=値] .> false ulimit [
 -SHAbcdefiklmnpqrstuvxPT] [limit]
 fc [-e ename] [-lnr] [first] [last] または fc -s> umask [-p] [-S] [mode]
 fg [job_spec] unalias [-a] name [name ...]
 for NAME [in WORDS .. ] ; コマンドを実行します。don> unset [-f] [-v] [-n] [name ...]
 for (( exp1; exp2; exp3 )); コマンドを実行します。コマンドまで don>; コマンドを実行します。完了
 関数名 { コマンド ; } or name () { CO> 変数 - シェルの名前と意味>
 getopts optstring name [arg] wait [-fn] [id ...]
 hash [-lr] [-p pathname] [-dt] [name ...] コマンドを実行しながら; コマンドを実行します。終わり
 ヘルプ [-dms] [パターン ...] { コマンド ; }

日常的に使用

開封後の様子: 

いくつかの Linux コマンドを入力して試してみます。

この時点で、インストール結果は正常に使用できるようになります。


出口

おすすめ

転載: blog.csdn.net/boysoft2002/article/details/132034088
おすすめ