如何在 Windows 10 上安装和使用 Linux Bash Shell
已发表: 2022-08-10
周年更新中引入的适用于 Linux 的 Windows 子系统成为秋季创作者更新中的稳定功能。 您现在可以在 Windows 上运行 Ubuntu、openSUSE、Fedora 的混音版以及其他许多其他软件,更多 Linux 发行版即将推出。
您需要了解的有关 Windows 10 的 Bash Shell 的信息
相关:你可以用 Windows 10 的新 Bash Shell 做的一切
适用于 Linux 1 (WSL1) 的 Windows 子系统如何工作
Windows 10 提供了一个完整的 Windows 子系统,适用于 Linux (WSL),用于运行 Linux 软件。 这不是为 Windows 编译的虚拟机、容器或 Linux 软件(如 Cygwin)。 它基于微软放弃的在 Windows 上运行 Android 应用程序的 Project Astoria 工作。
把它想象成葡萄酒的反面。 Wine 允许您直接在 Linux 上运行 Windows 应用程序,而适用于 Linux 的 Windows 子系统允许您直接在 Windows 上运行 Linux 应用程序。
Microsoft 与 Canonical 合作提供了一个完整的基于 Ubuntu 的 Bash shell 环境,该环境在该子系统上运行。 从技术上讲,这根本不是 Linux。 Linux 是底层操作系统内核,在这里不可用。 相反,这允许您运行 Bash shell 和您通常在 Ubuntu Linux 上运行的完全相同的二进制文件。 自由软件纯粹主义者经常争辩说,一般的 Linux 操作系统应该被称为“GNU/Linux”,因为它实际上是在 Linux 内核上运行的大量 GNU 软件。 您将获得的 Bash shell 实际上就是所有这些 GNU 实用程序和其他软件。
虽然此功能最初称为“Windows 上的 Ubuntu 上的 Bash”,但它还允许您运行 Zsh 和其他命令行 shell。 它现在也支持其他 Linux 发行版。 您可以选择 openSUSE Leap 或 SUSE Enterprise Server 而不是 Ubuntu,并且有一个 Fedora 的混音版可用。
这里有一些限制。 它不会正式与图形 Linux 桌面应用程序一起使用。 也不是每个命令行应用程序都有效,因为该功能并不完美。
适用于 Linux 2 (WSL2) 的 Windows 子系统如何工作
适用于 Linux 2 (WSL2) 的 Windows 子系统旨在提供与其前身完全相同的用户体验,但相似之处大多到此为止。
WSL2 在极其高效的虚拟机中运行完整的 Linux 内核。 与 WSL1 一样,WSL2 允许您使用一系列不同的 Linux 发行版,包括 Ubuntu、Debian、Kali、openSUSE、Fedora 等。 这也意味着大多数 Linux 应用程序、包或命令都可以正常工作。
注意: WSL2 支持 Windows 11 上的 GUI 应用程序。
如何在 Windows 10 上安装 Bash
相关:我如何知道我运行的是 32 位还是 64 位 Windows?
此功能不适用于 32 位版本的 Windows 10,因此请确保您使用的是 64 位版本的 Windows。 无论如何,如果您仍在使用 32 位版本,是时候切换到 64 位版本的 Windows 10。
假设您有 64 位 Windows,要开始使用,请前往控制面板 > 程序 > 打开或关闭 Windows 功能。 启用列表中的“Windows Subsystem for Linux”选项,然后单击“确定”按钮。
当系统提示您重新启动计算机时,单击“立即重新启动”。 在您重新启动之前,该功能将无法使用。
注意:从 Fall Creators Update 开始,您不再需要在“设置”应用中启用开发者模式即可使用此功能。 您只需要从 Windows 功能窗口安装它。
或者,您也可以使用 PowerShell 安装它。 以管理员身份启动 PowerShell,然后输入:
wsl --安装
下载并安装所有必需的组件需要几分钟时间——完成后,您需要重新启动计算机。
计算机重新启动后,从“开始”菜单打开 Microsoft Store,然后在商店中搜索“Linux”。
注意:从 Fall Creators Update 开始,您不能再通过运行“bash”命令来安装 Ubuntu。 相反,您必须从 Store 应用程序或使用wsl --install -d <Distribution>
命令安装 Ubuntu 或其他 Linux 发行版。
相关: Windows 10 上的 Ubuntu、openSUSE 和 Fedora 有什么区别?
您将看到 Windows 应用商店中当前可用的每个 Linux 发行版的列表。 截至秋季创作者更新,这包括 Ubuntu、openSUSE Leap 和 openSUSE Enterprise,并承诺 Fedora 将很快到来。
更新: Debian、Kali 和 Fedora 的混音版现已在商店中提供。 搜索“Debian Linux”、“Kali Linux”或“Fedora Linux”以查找并安装它们。
要安装 Linux 发行版,请单击它,然后单击“获取”或“安装”按钮以安装它,就像安装任何其他商店应用程序一样。
如果您不确定要安装哪个 Linux 环境,我们推荐 Ubuntu。 这种流行的 Linux 发行版以前是唯一可用的选择,但现在其他 Linux 系统可供有更具体需求的人使用。
您还可以安装多个 Linux 发行版,它们每个都有自己独特的快捷方式。 您甚至可以在不同的窗口中同时运行多个不同的 Linux 发行版。
如何使用 Bash Shell 和安装 Linux 软件
相关:如何在 Windows 10 的 Ubuntu Bash Shell 中安装 Linux 软件
您现在拥有一个基于 Ubuntu 或您安装的任何其他 Linux 发行版的完整命令行 bash shell。
因为它们是相同的二进制文件,所以如果您使用的是 Ubuntu,则可以使用 Ubuntu 的 apt 或 apt-get 命令从 Ubuntu 的存储库中安装软件。 只需使用您通常在该 Linux 发行版上使用的任何命令。 您将可以访问所有 Linux 命令行软件,尽管有些应用程序可能还不能完美运行。
要打开您安装的 Linux 环境,只需打开“开始”菜单并搜索您安装的任何发行版。 例如,如果您安装了 Ubuntu,请启动 Ubuntu 快捷方式。
您可以将此应用程序快捷方式固定到“开始”菜单、任务栏或桌面,以便于访问。
首次启动 Linux 环境时,系统会提示您输入 UNIX 用户名和密码。 这些不必与您的 Windows 用户名和密码匹配,但将在 Linux 环境中使用。

例如,如果您输入“bob”和“letmein”作为您的凭据,那么您在 Linux 环境中的用户名将是“bob”,而您在 Linux 环境中使用的密码将是“letmein”——无论您的 Windows 用户名和密码是。
相关:如何在 Windows 10 上设置默认 Linux 发行版
您可以通过运行wsl
命令来启动已安装的 Linux 环境。 如果您安装了多个 Linux 发行版,则可以选择此命令启动的默认 Linux 环境。
如果你安装了 Ubuntu,你也可以运行ubuntu
命令来安装它。 对于 openSUSE Leap 42,使用opensuse-42
。 对于 SUSE Linux Enterprise Sever 12,使用sles-12
。 这些命令列在 Windows 应用商店的每个 Linux 发行版页面上。
你仍然可以通过运行bash
命令来启动你的默认 Linux 环境,但微软表示这已被弃用。 这意味着bash
命令将来可能会停止运行。
如果您有在 Linux、Mac OS X 或其他平台上使用 Bash shell 的经验,那么您就对了。
在 Ubuntu 上,您需要在命令前加上sudo
才能以 root 权限运行它。 UNIX 平台上的“root”用户拥有完整的系统访问权限,就像 Windows 上的“Administrator”用户一样。 您的 Windows 文件系统位于 Bash shell 环境中的/mnt/c
。
使用您用来解决问题的相同 Linux 终端命令。 如果您习惯了标准的 Windows 命令提示符及其 DOS 命令,这里有一些 Bash 和 Windows 通用的基本命令:
- 更改目录:Bash 中的
cd
,DOS 中的cd
或chdir
- 列出目录的内容:Bash 中的
ls
,DOS 中的dir
- 移动或重命名文件:Bash 中的
mv
,DOS 中的move
和rename
- 复制文件:bash 中的
cp
,DOS 中的copy
- 删除文件:Bash 中的
rm
,DOS 中的del
或erase
- 创建目录:Bash 中的
mkdir
,DOS 中的mkdir
- 使用文本编辑器:Bash 中的
vi
或nano
,在 DOS 中edit
相关:初学者极客:如何开始使用 Linux 终端
重要的是要记住,与 Windows 不同,Bash shell 及其模拟 Linux 的环境是区分大小写的。 换句话说,带有大写字母的“File.txt”与没有大写字母的“file.txt”不同。
有关更多说明,请参阅我们的 Linux 命令行初学者指南和其他类似的 Bash shell、Ubuntu 命令行和 Linux 终端在线介绍。
您需要使用 apt 命令来安装和更新 Ubuntu 环境的软件。 确保在这些命令前加上sudo
前缀,这使它们以 root 身份运行——Linux 相当于 Administrator。 以下是您需要了解的 apt-get 命令:
- 下载有关可用软件包的更新信息:
sudo apt update
- 安装应用程序包:
sudo apt install packagename
(将“packagename”替换为包的名称。) - 卸载应用程序包:
sudo apt remove packagename
(将“packagename”替换为包的名称。) - 搜索可用软件包:
sudo apt search word
(将“word”替换为您要搜索软件包名称和描述的词。) - 下载并安装已安装软件包的最新版本:
sudo apt upgrade
如果您安装了 SUSE Linux 发行版,则可以使用 zypper 命令来安装软件。
下载并安装应用程序后,您可以在提示符处键入其名称,然后按 Enter 键运行它。 查看该特定应用程序的文档以获取更多详细信息。
奖励:安装 Ubuntu 字体以获得真正的 Ubuntu 体验
如果您想在 Windows 10 上获得更准确的 Ubuntu 体验,您还可以安装 Ubuntu 字体并在终端中启用它们。 您不必这样做,因为默认的 Windows 命令提示符字体对我们来说看起来不错,但它是一个选项。
这是它的样子:
要安装字体,首先从 Ubuntu 的网站下载 Ubuntu Font Family。 打开下载的 .zip 文件并找到“UbuntuMono-R.ttf”文件。 这是 Ubuntu 等宽字体,是终端中唯一使用的字体。 这是您需要安装的唯一字体。
双击“UbuntuMono-R.ttf”文件,您将看到字体预览。 单击“安装”将其安装到您的系统。
相关:学习像专业人士一样使用注册表编辑器
要使 Ubuntu 等宽字体成为控制台中的一个选项,您需要在 Windows 注册表中添加一个设置。
按键盘上的 Windows+R,键入regedit
,然后按 Enter,打开注册表编辑器。 导航到以下键或将其复制并粘贴到注册表编辑器的地址栏中:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Console\TrueTypeFont
右键单击右窗格并选择新建 > 字符串值。 将新值命名为000
。
双击刚刚创建的“000”字符串,然后输入Ubuntu Mono
作为其值数据。
启动一个 Ubuntu 窗口,右键单击标题栏,然后选择“属性”命令。 单击“字体”选项卡,然后在字体列表中选择“Ubuntu Mono”。
您在 Bash shell 中安装的软件仅限于 Bash shell。 您可以从命令提示符、PowerShell 或 Windows 中的其他位置访问这些程序,但前提是您运行bash -c
命令。