WSL 新手入门指南(很详细) @

摘要 @

对于很多初学 linux 的人来说,快速的在 windows 操作系统中搭建一个 linux 学习环境是很有必要的。

很多人会尝试使用类似 VM 的虚拟机管理软件来装一个 linux 系统环境,但整个安装过程较为繁琐,而 wsl 则提供了另一种选择。

何为 WSL? @

按照官方的解释。

WSL(适用于 Linux 的 Windows 子系统 )是 Windows 的一项功能,可用于在 Windows 计算机上运行 Linux 环境,而无需单独的虚拟机或双引导。 WSL 旨在为希望同时使用 Windows 和 Linux 的开发人员提供无缝高效的体验。

那优点自不必多说

  • 无需单独的虚拟机或引导
  • 可以同时使用 windows 和 linux
  • 为开发人员提供无缝高效的体验

WSL 版本差别 @

wsl 目前分为两个版本: wsl1 和 wsl2,具体的差别在官方文档已经说明了,我直接拿过来讲下。

功能 WSL 1 WSL 2
Windows 和 Linux 之间的集成
启动时间短
与传统虚拟机相比,占用的资源量少
可以与当前版本的 VMware 和 VirtualBox 一起运行
托管 VM
完整的 Linux 内核
完全的系统调用兼容性
跨 OS 文件系统的性能
systemd 支持
IPv6 支持

通过对比可以看到,wsl2 支持了完整的 linux 内核,并且拥有完全的系统调用兼容性,也支持 systemd 管理后台进程。

仅仅在跨 OS 文件系统性能层面慢了点,但这点实际上是问题不大的,毕竟我们不需要频繁的从 windows 拷贝大文件到 linux 系统上。

wsl2 支持完整的 linux 内核,也说明 wsl2 是可以安装 docker 的,而 wsl1 无法实现,这对于后期学习 docker 的同学来说,毫无疑问装 wsl2 才是正确的选择。

安装 @

首先 wsl 在 Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)或 Windows 11 是默认开启的,如果 windows 版本比较老,我推荐大家升级以下 windows,这都 2025 年了,不会还有 win10 以下的系统吧?

首先打开 PowerShell (win10 以上应该自带这个终端)

输入命令: wsl –install 开始安装 wsl

等待一会,直到安装完成,这个下载速度比较慢,可能 wsl 安装包在国外服务器。

它告诉我们要重启系统,那我们先重启。

重启完成后,重新打开 PowerShell,然后输入命令: wsl -v 测试下有没有安装完成

可以看到 WSL 的版本信息,说明 wsl 我们安装完成了

安装虚拟机 @

前一步既然安装好了 wsl,但我们要知道刚刚安装的只是一个用于管理虚拟机的工具而已。

接下来一步还需要完成虚拟机的安装。

首先通过命令来查看当前可用的 linux 发行版列表

wsl -l -o #查看可用linux发行版列表

如果报错无法建立链接,别担心,因为国内被墙了,导致 dns 无法解析 raw.githubusercontent.com 域名。

无法从“https://raw.githubusercontent.com/microsoft/WSL/master/distributions/DistributionInfo.json”中提取列表分发。无法与服务器建立连接
错误代码: Wsl/WININET_E_CANNOT_CONNECT

我们只需要查到raw.githubusercontent.com域名对应的ip地址, 填到C:\Windows\System32\drivers\etc\hosts文件里即可。

首先进到 C:\Windows\System32\drivers\etc 目录,找到 hosts 文件,右键-> 属性,安装下图指示,选择你登录的用户,然后授权修改和写入的权限即可。

在 hosts 文件的最后一行,加入域名对应的 ip。

185.199.109.133 raw.githubusercontent.com

再次在 PowerShell 输入命令,即可看到

到此,我们已经可以连通微软的镜像仓库了,那接下来就是下载镜像、装系统了,可以通过下面命令安装系统。

wsl --install -d ubuntu # 安装ubuntu发行版

等待下载完成。。。

安装完成后,可以看到下面的提示。

然后可以输入命令来查看和管理我们安装的系统。

wsl --list --all             #查看所有安装的分发版本
wsl --list --running         #查看正在运行的分发版本
wsl --unregister ubuntu      #删除指定的发布版本

至此,我们的子系统已经安装好了。

使用子系统 @

现在通过开始菜单的搜索,已经可以搜索到有一个 Ubuntu 的应用。

点开后,就到了首次进入系统的配置操作,主要配置登录的账户和密码

如果忘了自己配置的密码,怎么改密码呢?

很简单,进入 PowerShell 终端,输入如下面命令修改密码

#重置root密码,终端输入命令
wsl.exe --user root
root: passwd root

如何从 windows 传文件到子系统 @

打开文件资源管理器,输入 \wsl$ 即可定位到子系统的目录中,然后要传到哪个文件夹,直接拖过去即可。

结尾 @

至此,安装子系统的教程到此结束!

你可以愉快的在 ubuntu 子系统中学习 linux 基础知识了!