微软于 6 月 24 日发布了 Windows 11。这家软件巨头随后向 Windows Insider 计划的成员发布了该操作系统,目前可以由 Dev 和 Beta 渠道中的注册人员进行测试。 虽然许多人对新的 UI 更改表示欢迎,但有些人仍然对继续困扰 Windows 的一些不一致性表示怀疑。
然而,Windows 11 的一项巧妙功能是改进的 Windows 子系统 Linux (WSL),它现在可以本地处理图形和音频。 在本文中,我们将了解 Windows 11 中 WSL 的新增功能以及如何开始使用它。
什么是 Linux 的 Windows 子系统
通常情况下,开发人员发现自己在熟悉的 Windows 界面和 Linux 中基于命令行的开发工具链的易用性之间切换。 此外,那些处理大数据的人会发现大量为 Linux 本地开发的开源工具。 适用于 Linux 的 Windows 子系统(简称 WSL)使开发人员能够继续使用 Windows 作为他们的主要操作系统,同时提供对本机 Linux 二进制文件的访问权限。
因此,用户不必费心配置双引导设置。 虽然 Cygwin 确实为运行类 Unix 的命令提供了 POSIX 兼容层,但它需要重新编译这些命令,因此适用性有限。 使用 WSL,Windows 用户可以像任何其他程序一样直接调用 Linux shell 并运行本机 Linux 二进制文件。
从 Windows 10 1903 开始,微软推出了名为 WSL 2 的新版 WSL,它提供了与 Windows 文件系统更紧密的集成、更快的启动时间、更快的磁盘读取以及功能齐全的 Linux 内核。现在有了 Windows 11,微软甚至增加了 GUI 和实时音频支持。
在 Windows 11 中安装 WSL
安装适用于 Linux 的 Windows 子系统需要注意一些先决条件。由于 WSL 2 使用实际的虚拟机,因此您的 CPU 需要支持虚拟化。虽然这对于支持台式机和笔记本电脑的 Intel 和 AMD 的大多数现代 CPU 应该不是问题,但此功能通常在计算机的 BIOS/UEFI 中关闭。
启动到 PC 的 BIOS/UEFI 界面(通常,这涉及在开机时按 DEL 或 F2 键;有关详细信息,请参阅计算机的用户指南)。进入 BIOS 后,根据您的 CPU 搜索 Intel Virtualization Technology 或 AMD Secure Virtual Machine(也表示为 SVM)并启用它。保存更改并重新启动 PC。
从 WSL 1 升级到 WSL 2
除非你使用 WSL 1 从以前版本的 Windows 升级,否则 WSL 2 将默认用于所有最新版本的 Windows 10(1903 及更高版本)和 Windows 11。使用新的 GUI、音频和文件系统增强功能需要强制升级 到 WSL 2。
按照下面提到的步骤执行从 WSL 1 到 WSL 2 的就地升级:
1. 在提升的命令提示符、Windows 终端或 PowerShell 中键入以下内容。
wsl –set-version <distro-name> 2
2. 确保输入发行版的确切名称。 如果有疑问,只需键入:
wsl -l -v
3. 此命令列出已安装的 Linux 发行版、它们的当前状态以及它们正在使用的 WSL 版本。 使用上一条命令中此处列出的名称将 WSL 1 实例转换为 WSL 2。
在 Windows 11 中启用 WSL
如果这是您第一次在 Windows 11 上使用 WSL,您将自动获得 WSL 2 环境。您需要做的就是确保在 BIOS 中启用 CPU 虚拟化,并在您的环境中安装 WSL 功能。
1. 要启用 WSL,请单击“开始”按钮。
2. 键入“Turn Windows features on or off”
然后在对话框中启用 适用于 Linux 的 Windows 子系统 和 虚拟机平台。
在“打开或关闭 Windows 功能”中启用 WSL 功能
3. 单击确定并重新启动 PC。
WSL 2 最好的部分是大多数内核级功能都是由 Windows 更新直接提供的。您的 PC 可能会自动提供 WSL 2 内核更新。如果没有,只需转到“设置”应用程序,单击“Windows 更新”,然后单击“检查更新”以下载启用 WSLg(WSL GUI 的缩写)功能的最新内核。
此时,请注意,您需要根据您的主要 GPU 适配器拥有来自 Intel、NVIDIA 或 AMD 的最新图形驱动程序,以获得完整的 GPU 加速。您可以为相应的 GPU 使用测试版驱动程序,也可以只安装最新的公共版本。既然满足了先决条件,您就可以在 Windows 11 机器上安装 Linux 发行版了。
在 Windows 11 上的 WSL 2 中安装 Linux 发行版
在 Windows 11 上启动和运行 Linux 的最简单方法是前往 Microsoft Store 并搜索您选择的发行版。当前可用的选项包括 Ubuntu(16.04、18.04 和 20.04)、Kali Linux、SUSE Linux Enterprise Server、openSUSE leap、Fedora Remix for WSL 和 Debian。
适用于 Windows 11 的新 Microsoft Store 中的 Kali Linux
虽然 Microsoft Store 允许轻松下载和安装这些发行版,但目前选择有限。但是,使用 WSL 2,可以通过获取相应的 .tar 文件来创建和旁加载您自己的发行版。在本文中,我们将使用 Ubuntu,因为它非常流行,并且如果您在某个特定命令或操作上遇到困难,可以在网上找到优秀的资源。
某些组织或加入域的 PC 可能对 Microsoft Store 具有有限的访问权限。在这种情况下,您可以直接从 Microsoft 下载安装包。按照以下步骤安装发行版:
1. 您可以双击安装程序或使用安装程序文件夹中的以下 PowerShell 命令。
Add-AppxPackage .\app_name.appx
2. 安装您选择的发行版后,它应该会立即在“开始”菜单上弹出。
3. 只需单击该图标即可启动 Ubuntu 的安装实例。
4. 几秒钟后,系统将提示您创建用户帐户和密码。如果由于某种原因,安装程序没有提示您输入用户帐户或密码,它会直接以 root 身份登录。
请记住,使用 root 权限操作是一种糟糕的安全做法。默认情况下没有分配 root 密码,这使得它更容易受到攻击。首先分配一个root密码然后创建一个普通用户帐户总是有帮助的。您可以这样做:
1. 要分配新的 root 密码,请使用以下命令:
sudo passwd root
2. 接下来,输入并确认新的 root 密码。一定要安全地记下来。要创建一个普通用户帐户,然后可以在需要时用于 root 访问,请键入:
sudo adduser <username>
3. 然后 Ubuntu 会要求输入并确认您的密码以及一些其他信息,例如您的全名和电话(这是可选的)。
4. 这将创建您的专用 /home 目录并在 bash shell 提示符下显示您的用户名和 $ 符号。
WSL 2 Ubuntu 实例现在可以使用了。
在 Windows 11 上的 WSL 2 中运行的 Ubuntu 实例
更新您的 WSL 应用程序
至此,我们已完成安装 Ubuntu 并创建用户帐户和密码。在继续执行进一步步骤之前,它有助于进行快速更新检查并安装适用于您的发行版的最新软件包。
这可确保您的所有收件箱包都是最新的,并且您正在使用最新的功能和安全改进。按照步骤:
1. 输入以下命令获取新版本:
sudo apt-get update
sudo apt-get upgrade
2. 在 bash 提示符下,您第一次运行 sudo 时,它会要求您输入密码,该密码应至少在 15 分钟内有效才能运行连续的 sudo 命令。
请注意 apt-get upgrade 将仅引用 /etc/apt/sources/list 或者 /etc/apt/sources.list.d/ 中定义的存储库并相应地升级。
3. 要获得更无缝的更新过程,还可以运行:
sudo apt-get dist-upgrade
该命令可以智能地添加或删除包,以确保系统中没有冗余。
检查并升级 Linux 发行版
通常,Microsoft Store 默认提供最新的 Ubuntu 长期服务 (LTS) 版本。建议使用 LTS 版本以获得最大稳定性。您可以通过运行以下命令来检查新的操作系统版本:
sudo do-release-upgrade
但是,请首先运行上述更新和升级命令,以确保现有安装是最新的。 您可以通过键入以下内容来检查您的操作系统版本:
lsb_release -a
WSL 2 中的 Ubuntu 版本检查
请注意,您还可以通过键入以下内容获取有关任何命令的更多信息:
man <command name>
在 Windows 11 中访问 Linux 文件,反之亦然
现在我们已经在 Windows 11 的 WSL 2 中成功安装和配置了 Ubuntu,它有助于了解如何在 Linux 和 Windows 文件之间无缝移动。 在 Linux 中,NTFS 和其他文件系统可以挂载到专用挂载目录中。
WSL 的一种巧妙方法是,您可以直接从 Windows 文件夹调用 Linux 终端,并为您安装该文件夹。 这是通过名为 DrvFs 的文件系统插件实现的,WSL 使用该插件来启用 Linux 实例和 Windows 文件系统之间的互操作。
DrvFs 自动挂载 HDD 和 SSD 等固定磁盘并使其可供立即使用。 C盘挂在/mnt/c上,D盘挂在/mnt/d上,依此类推。
1. 您可以通过运行 df -h 命令列出所有磁盘及其挂载点来验证这一点。 在这个例子中,我们有一个 C 驱动器,它通过 DrvFs 挂载在 /mnt/c 上
2. 要将 Windows 驱动器切换到 WSL,请在命令提示符下键入以下命令并按 Enter。
cd /mnt/c #根据需要用相应的驱动器号替换 c
3. 与普通Linux一样,您也可以通过创建挂载点来挂载外部存储设备。使用以下命令
sudo mkdir /media/<dir name> #其中 <dir name> 可以是您希望挂载到的任何目录名称。
4. 然后将驱动器或分区挂载到此目录。
sudo mount /dev/<deviceID> /media/<dir name>
5. 要查看已安装驱动器的内容,首先使用命令切换到它。
cd /media/<dir name>
6. 最后,使用命令列出内容。
ls -ls
由于 WSL 的全部意义在于在 Linux 和 Windows 之间实现无缝互操作,因此也可以直接在 Windows 下查看 Linux 文件并使用 Windows 程序对其进行编辑。
Windows 将 WSL 视为网络上的 PC,并将 Linux 挂载为网络共享,以确保在用户在两个操作系统之间切换时正确维护文件权限。有多种方法可以从 Windows 访问 WSL 文件。
从 Windows 访问 WSL 文件的方法
1. 最简单的方法是在文件资源管理器的左侧面板中查看名为“Linux”的条目。
2. 单击它会将您安装的发行版列为文件夹。单击相应的发行版文件夹以访问该发行版中的所有 Linux 目录。
3. 从那里,您可以创建自己的文件和目录,就像您通常在 Windows 中所做的那样。
直接从资源管理器访问 WSL 文件
4. 也可以通过 \\wsl$在 Windows 中的任何文件资源管理器或运行对话框中键入来访问上述目录列表。
5. 你也可以explorer.exe从 WSL 中的任何 Linux 目录输入。这将直接打开当前工作 Linux 目录中的 Windows 文件资源管理器。
在本文中,我们熟悉了 WSL 2 以及如何在 WSL 2 中成功安装和更新 Linux 实例。我们还了解了如何在 Windows 和 Linux 上无缝导航文件系统。在接下来的文章中,我们将研究安装图形和音频应用程序,并了解它们在 Windows 11 中的 WSLg 中的工作情况。
如果您有什么要补充的,请在下面的评论中留下您的想法。