2021.1.17更新
官方教程:https://docs.microsoft.com/zh-cn/windows/wsl/install-win10
備份與恢復 https://www.jianshu.com/p/d51df75e1b9e
GUI https://medium.com/@japheth.yates/the-complete-wsl2-gui-setup-2582828f4577
聲音 https://zhuanlan.zhihu.com/p/150555651
注意
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 (請謹慎修改系統文件權限)