目录
注意
WSL 2需要开启Hyper-V,而Hyper-V将影响虚拟机的使用。如需关闭Hyper-V,请参考win10 WSL2 引起的 VirtualBox 启动问题_运维_Jackindata-CSDN博客。
安装WSL
0. 为什么要使用WSL 2
Windows Subsystem for Linux(简称WSL)是一个在Windows 10上能够运行原生Linux二进制可执行文件(ELF格式)的兼容层。
虚拟机速度太慢、操作不流畅,而WSL非常快速,开机几乎不需要时间,并且可以很方便地与Windows进行交互(例如复制粘贴、vscode远程调试等)。
1. 更新Windows 10至版本号2004
2004之前的版本是WSL 1,不支持Docker Engine。
2. 打开WSL功能并启用虚拟机平台可选组件
以管理员模式运行CMD/PowerShell,执行以下命令并重启计算机。
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
3. 默认启用WSL 2
wsl --set-default-version 2
5. 安装Ubuntu
在Microsoft Store中搜索ubuntu,任选一个安装即可,我安装的是第一个。
安装完成后,在开始菜单点击Ubuntu或者在PowerShell中执行wsl就可以进入WSL。
设置好用户名和密码后,建议设置root密码
sudo passwd
安装Docker
参照我的另一篇博客安装Docker Engine。
运行hello-world时可能报错,执行以下命令并重启。
sudo adduser $USER docker
在Ubuntu下
sudo service docker start # 每次wsl重启想用docker都要运行一次
sudo docker run hello-world
附录
访问WSL中的文件
cd ~ # 进入用户目录
explorer.exe . # 使用Windows文件资源管理器打开当前目录
使用VSCode编辑WSL中的文件
也可以将code换成其他Windows程序,例如notepad.exe(记事本),需要注意不能在root用户下使用。
有时保存文件会出现permission denied,解决方法:
- sudo chmod 777 filename
- (不建议)更换目录权限:sudo chown -R username path (请谨慎修改系统文件权限)