# 檢視已安裝的wsl子系統
wsl --list
# 依次刪除wsl 子系統
wsl --unregister <子系統名稱>
在Microsoft Store中搜尋Ubuntu,選擇對應版本安裝。安裝完成後,不要直接點開
安裝完成後,不要直接點選開啟
直接安裝預設安裝在C槽,後續要在Ubuntu系統裝很多東西,會影響效能,所以需要將系統的安裝位置修改一下。
控制檯切換到子系統預設安裝目錄:C:\Program Files\WindowApp\
cd C:\\Program Files\\WindowApp\\
找到Ubuntu2004.exe 目錄
dir Canonical #按tab鍵切換目錄檢視
在想要安裝的位置建立資料夾,然後將ubuntu2004.exe所在的目錄複製到建立的目錄下。
mkdi G:\ubuntu\20.04 #請將目錄改為自己需要的目錄
cp .\CanonicalGroupLimited.Ubuntu20.04所在目錄\* G:\ubuntu\20.04 #Ubuntu20.04的目錄需要補全
在自定義安裝目錄下,找到exe檔案,雙擊開啟。Ubuntu子系統會開始進行初始化。
每次啟動子系統時候,會自動分配給子系統一個IP地址,這樣會導致一些操作需要重新修改IP地址,如GitLab的地址。
建立一個bat檔案,將如下指令碼儲存到檔案中
@echo off
setlocal enabledelayedexpansion
::先停掉wsl範例
wsl --shutdown ubuntu
::重新拉起來,並且用root的身份,啟動docker服務
wsl -u root service docker start | findstr "Starting Docker" > nul # 不安裝Docker會報錯,可以先註釋掉
if !errorlevel! equ 0 (
echo docker start success
:: 看看我要的IP在不在
wsl -u root ip addr | findstr "171.168.0.109" > nul
if !errorlevel! equ 0 (
echo wsl ip has set
) else (
::不在的話給安排上
wsl -u root ip addr add 171.168.0.109/24 broadcast 171.168.0.0 dev eth0 label eth0:1
echo set wsl ip success: 171.168.0.109
)
::windows作為wsl的宿主,在wsl的固定IP的同一網段也給安排另外一個IP
ipconfig | findstr "171.168.0.100" > nul
if !errorlevel! equ 0 (
echo windows ip has set
) else (
netsh interface ip add address "vEthernet (WSL)" 171.168.0.100 255.255.255.0
echo set windows ip success: 171.168.0.100
)
)
pause
由於該指令碼需要Administration許可權執行,可以在桌面建立快捷方式,修改快捷方式的開啟方式用管理員許可權開啟。
參考連結:
本文原創作者:古道瘦西風,轉載請註明原文連結:https://www.cnblogs.com/kingkangstudy/p/17491038.html