WSL
WSL提供了一个微软开发的Linux兼容内核接口(不包含Linux代码),来自Ubuntu的用户模式二进制文件在其上运行。
该子系统不能运行所有Linux软件,例如那些图形用户界面,以及那些需要未实现的Linux内核服务的软件。不过,这可以用在外部X服务器上运行的图形X Window系统缓解。
此子系统起源于命运多舛的Astoria项目,其目的是允许Android应用运行在[Windows 10](https://baike.baidu.com/item/Windows 10/6877791?fromModule=lemma_inlink) Mobile上。此功能组件从Windows 10 Insider Preview build 14316开始可用。
2022年9月 22日,微软发布了 [Windows 11](https://baike.baidu.com/item/Windows 11/57321047?fromModule=lemma_inlink)/10 的 Linux 子系统新预览版,微软宣布从该版本开始,WSL 已支持 systemd。
具体安装过程
启用Linux子系统的功能
首先,需要在Windows Server或Win11(Win10)上,启用WSL功能:
打开PowerShell作为管理员。
执行以下命令启用适用于Linux的Windows子系统特性:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
重启电脑
下载WSL格式的Ubuntu系统镜像
方式一
在Microsoft Store
下载并安装Ubuntu 16.04 LTS
或更高版本。至此,在微软商店里安装Ubuntu
操作系统就全部完成了。
但是由于本人电脑上经常连不上
Microsoft Store
服务,处于不可用状态,使用方式二进行安装
方式二
从Ubuntu官网下载WSL系统:
Ubuntu官网WSL的下载地址:https://cloud-images.ubuntu.com/wsl/ 。
进入后,找到结果为wsl.rootfs.tar.gz的文件,根据自己的需要选择一个版本并下载下来。
安装Ubuntu WSL镜像
将下载的wsl.rootfs.tar.gz文件,移动到一个文件夹,例如
C:\Ubuntu\
, 下载的文件是以-wsl.rootfs.tar.gz
结尾的重命名为
ubuntu16.04-wsl.tar.gz
(版本号可以根据实际情况调整)用
Powershell
命令,在Windows
系统里安装Ubuntu
操作系统(导入到Linux
子系统)Powershell
命令格式:wsl --import <DistroName> <location to Install> <location of wsl.rootfs.tar.gz File>
比如,安装到C盘的
C:\Ubuntu\ubuntu16.04
目录:wsl --import Ubuntu16.04 C:\Ubuntu\16.04 C:\Ubuntu\ubuntu16.04-wsl.tar.gz
安装大概需要半分钟到1分钟,当
PowerShell
换了新的一行,说明import
安装完成了。安装完成后, 使用
wsl -l
命令检查最新的子系统:wsl -l
安装完成
需要手动启动Ubuntu
子系统,由于没有从Microsoft Store安装此应用程序,因此在“开始
”菜单中没有创建应用程序快捷方式。所以,你需要手动启动它;
// 手动启动命令 |
如果有安装 **Windows terminal**终端的话, 子系统也会被直接加载到配置里面,打开后可以直接食用:
碰到的问题
刚安装完成的时候,出现了以下问题:
wsl: 检测到 localhost 代理配置,但未镜像到 WSL。NAT 模式下的 WSL 不支持 localhost 代理。 |
解决方法
在Windows
中的C:\Users\<your_username>
目录下创建一个.wslconfig
文件,然后在文件中写入如下内容:
[experimental] |
配置后执行wsl --shutdown
关闭WSL
,之后再重启子系统,问题解决;