参考文档:
- Windows Subsystem for Linux Installation Guide for Windows 10
- WSL2 请启用虚拟机平台 Windows 功能并确保在 BIOS 中启用虚拟化
- Windows10 子系统(WSL)的配置和使用
【安装步骤】
1.以管理员身份运行 PowerShell 2.启用子系统功能1 | dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart |
1 | dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart |
下载链接:WSL2 Linux kernel update package for x64 machines
4.启用 wsl2 功能1 | wsl --set-default-version 2 |
如果出现报错信息 请启用虚拟机平台 Windows 功能并确保在 BIOS 中启用虚拟化问题
,那么需要手动安装 Hyper-V 虚拟机
具体安装方法:点击这里
5.下载合适的 Linux 系统在微软商店搜索 WSL,下载合适的版本
6.创建用户安装完成后,运行等待几分钟后会要求创建用户,输入用户名、密码即可
需要注意的是,该处创建的并不是 root 用户
7.root 用户因为 Ubuntu 默认的 root 密码是随机的,即每次开机都会产生一个新的密码,在终端输入 sudo passwd
,然后输入当前用户密码
回车后会提示输入新的密码,确认后即修改完成,使用 su root
输入密码,即可登录到 root 用户
【更换源】
Ubuntu 的软件源配置文件是 /etc/apt/sources.list
,首先执行以下命令,将系统自带的该文件做个备份
1 | cp /etc/apt/sources.list /etc/apt/sources_back.list |
然后使用 vim,打开 sources.list
,添加清华源,注意要添加版本一致的源
1 | vim /etc/apt/sources.list |
清华源镜像查询:点击这里
添加完成后,执行以下命令进行更新
1 | apt-get update && apt-get upgrade |
【迁移到非系统盘】
说明:在命令提示符界面中,输入 wsl --terminate
可以查看 wsl
所有相关命令
1 | wsl --shutdown |
利用 wsl --export <分发版> <文件名>
导出子系统
1 | wsl --export Ubuntu-18.04 I:/WSL/Ubuntu-18.04.tar |
导出完成后,可以看到文件结构如下
3.注销原分发利用 wsl --unregister <分发版>
来注销分发,以免出现重复
1 | wsl --unregister Ubuntu-18.04 |
此时,再利用 wsl --list
命令查询,可以发现当前没有分发版本
利用 wsl --import <分发版> <安装位置> <文件名>
导入之前导出的分发
1 | wsl --import Ubuntu-18.04 I:/WSL/Ubuntu-18.04 I:/WSL/Ubuntu-18.04.tar |
此时,可以看到新导入的分发
5.设置非 root 用户启动重新导入后,不能像之前那样在应用商店中更新,同时默认以 root 账户启动,这显然存在安全隐患
在命令提示符窗口中,输入 regedit
打开注册表,找到当前用户,其中 S-1-5-18
代表 SYSTEM,S-1-5-19
代表 LocalService,S-1-5-20
代表 NetworkServer,S-1-5-21-...
代表当前用户
接下来在当前用户下的 \Software\Microsoft\Windows\CurrentVersion\Lxss
中找到要更改默认账户的分发版
在 WSL 中利用 cat /etc/passwd
命令获取 Uid,这里的值是 1000,换算成十六进制是 3E8
对注册表中的 DefaultUid
进行编辑,将其值设为 3E8 即可
【Hyper-V 虚拟机的安装】
新建文本文件,复制以下内容,另存为 Hyper-V.cmd
1 | pushd "%~dp0" |
之后右键,以管理员身份运行,配置完成后输入 Y 重启计算机即可
重启后重新启动 WSL2 功能即可
1 | wsl --set-default-version 2 |