1.安裝WSL
通過控制面板——程序和功能——啟用或關閉WIndows功能,勾選“適用於Linux的Windows子系統”。
或者通過管理員權限打開 PowerShell 執行
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
2.下載 Centos 7 的docker 鏡像
可以參考 https://github.com/RoliSoft/WSL-Distribution-Switcher 或者 https://hub.docker.com/_/centos/ 來下載。
也可以直接下載 下面的鏈接給出的鏡像(7.6.1810)。
https://raw.githubusercontent.com/CentOS/sig-cloud-instance-images/7c2e214edced0b2f22e663ab4175a80fc93acaa9/docker/centos-7-docker.tar.xz
再提供一個百度網盤的分享(提取碼: 7qw5)
3. 安裝 chocolatey
參考 :https://chocolatey.org/install
使用管理員權限打開 powershell,執行
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
4. 安裝LxRunOffline
choco install lxrunoffline
5. 使用 LxRunOffline 部署 Centos 到WSL
CD C:\tools\lxrunoffline
.\LxRunOffline.exe install -n centos -d C:\ProgramData\Microsoft\Windows\WSL\CentOS -f C:\ProgramData\Microsoft\Windows\WSL\centos-7-docker.tar.xz
其中 -d 后面是要安裝到的目錄,-f 是前面下載的鏡像, -n 用來指定名稱。
然后使用 LxRunOffine 來開啟 Centos
LxRunOffline run -n centos
當然,如果你只安裝了這一個WSL,那直接輸入bash 也可以進行WSL.
6. 使用 ConEmu
ConEmu 是 Windows 下非常好用的終端模擬器. 稍作配置, 就可以直接進入 CentOS 7 中. 安裝好 ConEmu 后, 直接打開會進入 ubuntu. 通過在 Window 開始 搜索 Bash, 查看其屬性, 我們會發現其指向 C:\Window\System32\bash xxxxx 的字樣, 記下后面的 字符串, 在 ConEmu 設置中, 將啟動程序設為 bash xxx. 重新啟動 ConEmu 后, 我們就進入了 CentOS 7 了.
7. 相關問題
7.1 無法使用 sudo
安裝好 CentOS 7 后, 默認是沒有安裝 sudo 的, root 密碼也不知道. 我們可以在 cmd 中運行如下命令, 使默認登錄賬號變為 root, 這樣就有 root 權限了. 安裝sudo, 並將 User 加到 sudo 組中去, 最后將默認用戶改回User.
lxrun /setdefaultuser root
bash
passwd
yum install sudo -y
usermod -aG wheel User
sed -i "s|# %wheel|%wheel|g" /etc/sudoers
exit
lxrun /setdefaultuser User
7.2 新建文件夾權限問題
新建的文件夾權限默認為 777, 可在 ~/.profile 中加入如下命令:
$ echo "umask 0022" >> ~/.profile
8. 卸載Linux
在win10 LTSC 2019之前,卸載可以用lxrun工具,但是LTSC 2019拋棄了這個工具。因此你可以在別的地方看到很多說重裝linux子系統要用lxrun的,這都是老黃歷,不要采信。
前面提了一句,這個所謂安裝其實只是注冊。因而卸載的時候只要解除注冊就可以.解除注冊還是用剛才提到的wslconfig因而卸載過程為:在命令行輸入"wslconfig /u 發行版名",解除注冊.然后刪掉相應的文件夾即可。
參考文檔
https://www.cnblogs.com/lyqf365/p/10100162.html
https://www.pangzhan.net/526.html