【Linux】如何使用 WSL 在 Windows 上安装 Linux

2023-09-22 11:03:21

Linux 如何使用 WSL 在 Windows 上安装 Linux

开发人员可以在 Windows 计算机上同时访问 Windows 和 Linux 的强大功能。 通过适用于 Linux 的 Windows 子系统 (WSL),开发人员可以安装 Linux 发行版(例如 Ubuntu、OpenSUSE、Kali、Debian、Arch Linux 等),并直接在 Windows 上使用 Linux 应用程序、实用程序和 Bash 命令行工具,不用进行任何修改,也无需承担传统虚拟机或双启动设置的费用。

1、先决条件

必须运行 Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)或 Windows 11 才能使用以下命令。 如果使用的是更早的版本,请参阅手动安装页https://learn.microsoft.com/zh-cn/windows/wsl/install-manual。

2、安装 WSL 命令

现在,可以使用单个命令安装运行 WSL 所需的一切内容。 在管理员模式下打开 PowerShell 或 Windows 命令提示符,方法是右键单击并选择“以管理员身份运行”,输入 wsl --install 命令,然后重启计算机。

PowerShell

wsl --install
此命令将启用运行 WSL 并安装 Linux 的 Ubuntu 发行版所需的功能。 (可以更改此默认发行版)。

如果你运行的是旧版,或只是不想使用 install 命令并希望获得分步指引,请参阅旧版 WSL 手动安装步骤。

首次启动新安装的 Linux 发行版时,将打开一个控制台窗口,要求你等待将文件解压缩并存储到计算机上。 未来的所有启动时间应不到一秒。

备注

上述命令仅在完全未安装 WSL 时才有效,如果运行 wsl --install 并查看 WSL 帮助文本,请尝试运行 wsl --list --online 以查看可用发行版列表并运行 wsl --install -d 以安装发行版。 若要卸载 WSL,请参阅卸载旧版 WSL 或注销或卸载 Linux 发行版。

3、更改默认安装的 Linux 发行版

默认情况下,安装的 Linux 分发版为 Ubuntu。 可以使用 -d 标志进行更改。

若要更改安装的发行版,请输入:wsl --install -d 。 将 替换为要安装的发行版的名称。
若要查看可通过在线商店下载的可用 Linux 发行版列表,请输入:wsl --list --online 或 wsl -l -o。
若要在初始安装后安装其他 Linux 发行版,还可使用命令:wsl --install -d 。
提示

如果要通过 Linux/Bash 命令行(而不是通过 PowerShell 或命令提示符)安装其他发行版,必须在命令中使用 .exe:wsl.exe --install -d 或若要列出可用发行版,则使用:wsl.exe -l -o。

如果在安装过程中遇到问题,请查看疑难解答指南的安装部分。

要安装未列为可用版本的 Linux 发行版,可使用 TAR 文件导入任何 Linux 发行版。 在某些情况下,与 Arch Linux 一样,也可使用 .appx 文件进行安装。 还可以通过 WSL 创建自己的自定义 Linux 发行版,以供使用。

4、设置 Linux 用户信息

安装 WSL 后,需要为新安装的 Linux 发行版创建用户帐户和密码。 请参阅设置 WSL 开发环境的最佳做法指南来了解详细信息。

设置和最佳做法
建议遵循设置 WSL 开发环境的最佳做法这一指南,逐步了解以下操作:为已安装的 Linux 发行版设置用户名和密码、使用基本的 WSL 命令、安装和自定义 Windows 终端、针对 Git 版本控制进行设置、使用 VS Code 远程服务器进行代码编辑和调试、文件存储的最佳做法、设置数据库、装载外部驱动器、设置 GPU 加速等。

检查正在运行的 WSL 版本
可列出已安装的 Linux 发行版,并通过在 PowerShell 或 Windows 命令提示符中输入以下命令来检查每个发行版的 WSL 版本:wsl -l -v。

要在安装新的 Linux 发行版时将默认版本设置为 WSL 1 或 WSL 2,请使用命令 wsl --set-default-version <Version#>,将 <Version#> 替换为 1 或 2。

要设置与 wsl 命令一起使用的默认 Linux 发行版,请输入 wsl -s 或 wsl --setdefault ,将 替换为要使用的 Linux 发行版的名称。 例如,从 PowerShell/CMD 输入 wsl -s Debian,将默认发行版设置为 Debian。 现在从 Powershell 运行 wsl npm init 将在 Debian 中运行 npm init 命令。

要在 PowerShell 或 Windows 命令提示符下运行特定的 WSL 发行版而不更改默认发行版,请使用命令 wsl -d ,将 替换为要使用的发行版的名称。

有关详细信息,请参阅 WSL 的基本命令指南。

将版本从 WSL 1 升级到 WSL 2
使用 wsl --install 命令安装的新 Linux 安装将默认设置为 WSL 2。

wsl --set-version 命令可用于从 WSL 2 降级到 WSL 1,或将以前安装的 Linux 发行版从 WSL 1 更新到 WSL 2。

要查看 Linux 发行版是设置为 WSL 1 还是 WSL 2,请使用命令 wsl -l -v。

要更改版本,请使用 wsl --set-version 2 命令将 替换为要更新的 Linux 发行版的名称。 例如,wsl --set-version Ubuntu-20.04 2 会将 Ubuntu 20.04 发行版设置为使用 WSL 2。

如果在 wsl --install 命令可用之前手动安装了 WSL,则可能还需要启用 WSL 2 所使用的虚拟机可选组件并安装内核包(如果尚未这样做)。

如需了解更多信息,请参阅 WSL 命令参考以获取 WSL 命令列表,并参阅比较 WSL 1 和 WSL 2,获取有关用于你的工作场景的指南,或参阅设置 WSL 开发环境的最佳做法,了解有关使用 WSL 设置良好开发工作流的一般指南。

5、使用 WSL 运行多个 Linux 发行版的方法

WSL 支持运行想要安装的任意数量的不同 Linux 发行版。 这可能包括从 Microsoft Store 选择发行版、导入自定义发行版或生成自己的自定义发行版。

安装后,有几种方法可以运行 Linux 发行版:

安装 Windows 终端(推荐):使用 Windows 终端支持你想要安装的任意数量的命令行,并允许你在多个标签或窗口窗格中打开它们并在多个 Linux 发行版或其他命令行(PowerShell、命令提示符、PowerShell、Azure CLI 等)之间快速切换。 可使用独特的配色方案、字体样式、大小、背景图像和自定义键盘快捷键来完全自定义终端。 了解详细信息。
通过访问 Windows“开始”菜单并键入已安装的发行版的名称,可以直接打开 Linux 发行版。 例如:“Ubuntu”。 这会在其自己的控制台窗口中打开 Ubuntu。
在 Windows 命令提示符或 PowerShell 中,可以输入已安装的发行版的名称。 例如:ubuntu
在 Windows 命令提示符或 PowerShell 中,可以在当前命令行中打开默认的 Linux 发行版,方法是输入:wsl.exe。
在 Windows 命令提示符或 PowerShell 中,可以在当前命令行中使用默认的 Linux 发行版,而无需输入新的发行版名称,方法是输入:wsl [command]。 将 [command] 替换为 WSL 命令,例如,替换为 wsl -l -v 以列出已安装的发行版,或 wsl pwd 以查看当前目录路径在 WSL 中的装载位置。 在 PowerShell 中,命令 get-date 将提供 Windows 文件系统中的日期,而 wsl date 将提供 Linux 文件系统中的日期。
选择的方法应取决于所执行的操作。 如果已在 Windows 提示符或 PowerShell 窗口中打开 WSL 命令行并想退出,请输入命令:exit。

6、想要试用最新的 WSL 预览功能?

加入 Windows 预览体验计划,试用 WSL 的最新功能或更新。 加入 Windows 预览体验成员后,可以在 Windows 设置菜单内选择希望从哪个频道接收预览版,以自动接收与该版本关联的任何 WSL 更新或预览功能。 可以选择:

开发频道:更新最新,但稳定性低。
Beta 版频道:非常适合早期采用者,版本比开发频道的版本更可靠。
发布预览频道:在下一版 Windows 即将公开发布之前的预览版修补程序和重要功能。

更多推荐

【副业合集】60个正规可做兼职的网站

分为两大板块,技能类和非技能类,大家可以根据自己个人情况进行选择。一、非技能类下苦力气,不用动什么脑子1.任务类无门槛,赚的不多,可能一天也就只能赚十几块,但都是官方平台,有保障,对于学生党来说还行。阿里众包京东微工腾讯搜活帮龙猫众包百度众测百川任务有道众包2.跑腿类跑腿类的性质就是出卖劳动力了,只要你愿意干,有时间干

组合拳SSRF+redis未授权访问

目录一、SSRF二、redis未授权访问三、组合利用1.写入Webshell2.反弹shell一、SSRF一台web服务器对其他服务器发起请求,以加载其他服务器的web内容或数据但因请求参数没有进行严格过滤,攻击者可能会通过SSRF漏洞来访问敏感数据、执行未经授权的操作,或者将服务器用于发起攻击其他系统的请求。二、re

基于YOLOv8模型的深海鱼目标检测系统(PyTorch+Pyside6+YOLOv8模型)

摘要:基于YOLOv8模型和BDD数据集的自动驾驶目标检测系统可用于日常生活与海洋中检测与定位深海鱼目标,利用深度学习算法可实现图片、视频、摄像头等方式的目标检测,另外本系统还支持图片、视频等格式的结果可视化与结果导出。本系统采用YOLOv8目标检测算法训练数据集,使用Pysdie6库来搭建前端页面展示系统。另外本系统

探索以太坊 Layer 2 解决方案的后起之秀——Starknet

作者:stella@footprint.network数据来源:StarknetDashboard“区块链三难题”,或“可扩展性三难题”,强调了区块链平台想要去平衡安全性、去中心化和可扩展性将面临的挑战。通常情况下,区块链架构只能有效地优先考虑其中两个难题。例如,以太坊优先考虑了安全性和去中心化,导致了可扩展性方面面临

1. 快速体验 VSCode 和 CMake 创建 C/C++项目

1.快速体验VSCode和CMake创建C/C++项目本章的全部代码和markdown文件地址:CMake_Tutorial,欢迎互相交流.此次介绍的内容都是针对于Linux操作系统上的开发过程.1.1安装开发工具VSCode:自行下载安装,然后安装插件Cmake:在Ubuntu系统上,可以采用apt工具安装:sudo

本地Tomcat网页搭建结合Cpolar内网穿透实现公网访问

文章目录1.前言2.本地Tomcat网页搭建2.1Tomcat安装2.2配置环境变量2.3环境配置2.4Tomcat运行测试2.5Cpolar安装和注册3.本地网页发布3.1.Cpolar云端设置3.2Cpolar本地设置4.公网访问测试5.结语1.前言Tomcat作为一个轻量级的服务器,不仅名字很有趣(让人想起童年)

探索Linux内核参数的妙用:深入理解配置,打造高效运行环境

文章首发地址Linux内核参数是指可以在Linux操作系统中通过修改内核参数来调整系统行为的设置。这些参数控制了操作系统的各种功能和特性,包括内存管理、网络协议、文件系统、进程调度等。在Linux中,内核参数可以通过多种方式进行修改和配置,包括在启动时通过传递命令行参数、通过sysctl命令动态修改、通过修改配置文件等

ESP32低功耗蓝牙BLE通信

ESP32低功耗蓝牙BLE通信蓝牙分类GATT协议GATT角色ESP32蓝牙简介ESP32开发板作为BLE服务设备或扫描设备手机APP连接作为BLEServer的ESP32总结蓝牙分类经典蓝牙ClassicBluetooth):用于数据量比较大的传输,如:图像、视频、音乐等。低功耗蓝牙(BluetoothLowEner

学习笔记:卸载nav2 navigation2导航

nav2二进制文件安装nav2导航安装方式分为二进制文件安装和源码方式安装,如果想用最快的方式跑通代码,推荐二进制安装,不用编译,没有缺少依赖编译失败的烦恼,安装命令:sudoaptinstallros-$ROS_DISTRO-navigation2ros-$ROS_DISTRO-nav2-bringupros-$RO

AIMS医院手术麻醉信息系统全套源码,自主版权,开箱即用

手术麻醉临床信息系统有着完善的临床业务功能,能够涵盖整个围术期的工作,能够采集、汇总、存储、处理、展现所有的临床诊疗资料。通过该系统的实施,能够规范麻醉科的工作流程,实现麻醉手术过程的信息数字化,自动生成麻醉的各种医疗文书,完成共享HIS、LIS、PACS和EMR等手术患者信息,从而提高麻醉、手术工作的管理水平。系统包

JVM架构和内存管理优化

Java虚拟机(JVM)是Java编程语言的核心组件,负责执行Java字节码并提供运行时环境,使得Java程序可以在不同的平台上运行。了解JVM的工作原理和内存管理对于优化代码性能和理解Java的内存管理和垃圾收集机制非常重要。在本文中,我们将详细讲解JVM的架构、类加载器、运行时数据区、执行引擎、本地方法接口以及内存

热文推荐