# 如何在Win11上安裝wsl/wsl2並建置vscode環境以運行C/C++/Python (注意:此篇文章並沒有完全寫完,僅wsl2安裝寫得較完善。若有缺失請先參考參考文章第四點的文章) ==(再注意:這幾個月換成MacOS了,所以新增的一些步驟可能沒有圖/都是憑記憶口述。如果有出錯就麻煩去找其他文章吧QQ)== wsl = Windows Subsystem for Linux 也就是在Windows下跑Linux(在一個作業系統裡裝另一個作業系統) 一般安裝wsl都是為了跑python或C/C++。 以下主要為wsl的安裝步驟,後面會補上python的其他步驟。 (目錄請善用HackMD目錄功能~) --- ## wsl/wsl2 [wsl與wsl2的差別](https://learn.microsoft.com/zh-tw/windows/wsl/compare-versions)。 如果沒有需要用到wsl2的話,應該可以直接跳到第4步。 ### 安裝wsl2的裝置需求  [詳細需求在此](https://learn.microsoft.com/zh-tw/windows/wsl/install-manual#step-2---check-requirements-for-running-wsl-2),檢查好後就可以開始進行安裝前的設定作業了~ ### 1-1 檢查virtualization是否有啟用 **工作管理員**->**效能**,從CPU看是否有啟用模擬。  有的話就沒事繼續下一步。沒有的話就得更動BIOS設定,開啟方式是**設定**->**系統**->**復原**->**進階啟動**。  點下去後電腦會重啟,然後進到一片很多選項的頁面。 ~~但因為我自己沒有需要啟動這個的情況所以中文長怎樣我也不知道,就請需要開啟的人再看[這篇文章(全英文)](https://s1gr1d.medium.com/how-to-set-up-linux-on-windows-with-wsl-2-debe2a64d20d)的「2. Check if virtualization is enabled」揣摩ㄌ~~ ### 1-2 啟用Windows子系統Linux版 進設定跟指令法,兩種2擇1。 #### 進設定 在設定搜尋找到**開啟或關閉Windows功能**。  或是~~帥一點~~快捷鍵++win\+R++打開**執行**輸入`optionalfeatures`。  把那個**Windows子系統Linux版**打勾。  按確定後重啟,但可能也不用因為下一個步驟也在這個頁面。 #### 指令法 打開PowerShell __(以系統管理員身份執行)__ 並打上以下指令送出。 ``` dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart ``` 一樣成功後重啟,但可能也不用因為下一個步驟也在這個頁面。 :::warning **注意** 上面兩種方法擇一完成重啟後,**設定**->**Windows Update** 刷新一下應該會有幾個22H2的更新,要全部更新(這個更完好像不用重新開機)。  大概是這些更新,這張圖是更新完後可以在更新記錄看到。 ::: ### 1-3 啟用虛擬機器平台 一樣進設定跟指令法,兩種2擇1。 #### 進設定 和1-2一樣找到**開啟或關閉Windows功能**後把那個**虛擬機器平台**打勾。  #### 指令法 打開PowerShell __(以系統管理員身份執行)__ 並打上以下指令送出。 ``` dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart ``` 上面兩種方法擇一後我忘記須不須要重啟但保險一下還是重啟吧,然後==如果1-2做完還沒重啟的話記得重啟完去Windows Update更新!!== :::danger 1-1沒做的話1-3好像會開不起來,所以一定要先做1-1! 至於1-2要哪時做好像都沒關係,只要有記得重啟+Windows Update就行了。 ::: ### 2 更新Linux核心(kernel) 有牽涉到下載檔案的部分我一律給[連結](https://learn.microsoft.com/zh-tw/windows/wsl/install-manual#step-4---download-the-linux-kernel-update-package)。 看你的電腦是x64還是ARM64,選對應的更新套件下載後點兩下執行安裝,這個裝很快。 ### 3 設定預設version 在PowerShell打上(這邊開始不需要管理員身份了): ``` wsl --set-default-version 2 ``` 就預設都會是wsl2了。 (下面有如何從wsl2切成wsl的方法) ### 4 安裝Linux 總算正式走到這步la~ 找安裝有兩種方法,商店下載跟打指令。 #### 商店下載 打開**Microsoft Store**搜尋「linux」,然後挑一個你要的下載。 (如果不知道要選哪個就挑20.04那個~~因為我也用那個~~)  如果不明原因載不了或是想要的版本在Store找不到的話,微軟在[這裡](https://learn.microsoft.com/zh-tw/windows/wsl/install-manual#step-6---install-your-linux-distribution-of-choice)有給每種Linux的Store下載連結,再往下拉一下也有提供可以手動安裝的Linux發行版本。 #### 打指令 在PowerShell打上下面指令,查詢有什麼linux版本可以安裝。 ``` wsl --list --online ```  然後和圖片上面寫的一樣,用下面的指令安裝你要的版本。 ``` wsl --install -d <Distro> ``` \<Distro\>是指左欄的NAME喔。 中間可能會要同意什麼的,就都y就對了。有遇到錯誤訊息就全部複製貼google查~~因為我也不知道不明瞭不想要為什麼 我的心~(~~ \- 用上面任一解法成功後應該就會先自己執行了,如果沒有執行就直接去**開始**找剛下載好熱騰騰的Linux點一下執行。 如果安裝成功設定也正常,就會要你輸入新的使用者名稱跟密碼(不用和你的Windows一樣),恭喜完成安裝WSL~~~ 若中間有失敗的話,它噴的訊息不一定能看懂,但後面通常會給一串網址,那個網址比較有用,再慢慢試著透過網址解決問題吧~ --- ### 其他wsl指令 查詢有安裝的子系統資訊: ``` wsl -l -v ```  \- 如果想要更改某個子系統的wsl版本(更改好像會花一點時間): ``` wsl --set-version <distribution name> <versionNumber> ``` \<distrivution name\>: 就是上圖的NAME。 \<versionNumber>: 1或2。 ### OhMyZsh - 如果你想讓操作介面更美觀 如果覺得wsl的terminal超級醜,一坨白白的很難辨認的話,可以安裝OhMyZsh! #### 1 進入wsl 在PowerShell打下面指令應該可以開啟wsl。(接下來的操作都會在wsl的環境裡) ``` wsl ``` #### 2 [安裝OhMyZsh](https://ohmyz.sh/#install) 在wsl裡打入下面的指令: ``` sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" ``` #### 3 啟動 下載完畢後,可以重新啟動比較保險。 在wsl裡打入下面的指令: ``` zsh ``` 就會進入到zsh了。 #### 4 設為預設 有點忘記安裝完後會不會一開wsl就進zsh殼層裡。如果沒有且想要作為預設的話,根據[這個網站](https://blog.evalcode.com/zsh-default-wsl-windows-10/),打下以下指令就可以了: ``` chsh -s $(which zsh) ``` ~~(應該是這樣,出問題就請估狗ㄅ)~~ #### 5 設定./zshrc ``` vim ~/.zshrc ``` vim是linux裡的文件預覽編輯程式,這一行的意思是:用vim打開.zshrc這個設定檔。 ##### vim操作 打完之後應該會看到一份文件,裡面可能全空也可能有很多字(裝完OhMyZsh的話應該要是很多字)。 1. 此時在**瀏覽模式**裡,這時隨便亂按應該是無法寫入文件的。 2. 按下```I```,左下角會有訊息寫```INSERT```,代表現在進入**寫入模式**。 3. 開始自訂theme和想要的plugin,我自己的配置在[這一篇筆記](https://hackmd.io/@hsueh945/HkrLxHfKT)供參。 4. 寫完後按下```esc```離開寫入模式,回到瀏覽模式。 5. 在瀏覽模式下打出```:wq```並enter。(wq=write quit) 6. 完成編輯! #### 6 重啟zsh 再打一次```zsh```重啟(或是先```bash```再```zsh```也可以)。 \*如果有說什麼找不到plugin,上面vim操作步驟3的筆記裡有方法,或是上網找怎麼補全都可以。網路上也有更多人推薦的plugin可以參考。 --- ## 設定vscode(安裝完wsl/wsl2後) ### 1 下載vscode然後安裝 [這裡下載!](https://code.visualstudio.com/Download) ### 2 到Extension下載WSL 這個擴充使得vscode可以連到WSL。 (照理說安裝了什麼東西都最好重新開機一下,這裡可以做一下)  ### 3 左下角那個箭頭圖案 那個藍藍的東西,點下去。  應該會有個選項是「連接到wsl」,點下去。 \*如果要在wsl開啟某個資料夾,則先開啟資料夾後再點這個藍藍按鍵,應該會有個選項是「在wsl中重新開啟這個資料夾」。 ### 4 開啟Terminal 選單列->Terminal->New Terminal 開啟wsl終端,大功告成!! --- --- ## Python ### pip 通常Linux裝完後內建就會有python,但不一定會有pip。 安裝pip指令 ``` sudo apt install python3-pip ``` 安裝完後,試著查詢 ``` pip list ``` 如果安裝有出錯沒有成功,試著跑 ``` sudo apt-get update ``` 之後==重啟Linux==再重新安裝pip。~~再失敗就無限循環~~ --- 參考文章 1. [舊版 WSL 的手動安裝步驟 - Microsoft](https://learn.microsoft.com/zh-tw/windows/wsl/install-manual) 2. [How to set up Linux on Windows with WSL 2 - Medium](https://s1gr1d.medium.com/how-to-set-up-linux-on-windows-with-wsl-2-debe2a64d20d) 3. [WSL 與 Windows 的完美雙結合 — 修改VSCode的預設Terminal為WSL - Medium](https://medium.com/%E4%B8%80%E5%80%8B%E5%B0%8F%E5%B0%8F%E5%B7%A5%E7%A8%8B%E5%B8%AB%E7%9A%84%E9%9A%A8%E6%89%8B%E7%AD%86%E8%A8%98/wsl-%E8%88%87-windows-%E7%9A%84%E5%AE%8C%E7%BE%8E%E9%9B%99%E7%B5%90%E5%90%88-%E4%BF%AE%E6%94%B9vscode%E7%9A%84%E9%A0%90%E8%A8%ADterminal%E7%82%BAwsl-2ab3604a7ef5) 4. [Python:Visual Studio Code 在 WSL 中進行開發 - HackMD](https://hackmd.io/@withhhsong/python_wsl) 5. [WSL:在 Win10 安裝 Linux 子系統](https://withhhsong.com/wsl_linux/) 6. [Windows 10 安裝 WSL1、WSL2(手動安裝) - HackMD](https://hackmd.io/@Kailyn/BkMi80IeF) 7. [Windows 11 安裝 WSL2](https://hackmd.io/@Kailyn/H1N5OPKlF) 8. [在Windows11上安裝Windows 子系統 Linux 版 WSL2 - 不及格研究室](https://blog.twshop.asia/%E5%9C%A8windows11%E4%B8%8A%E5%AE%89%E8%A3%9Dwindows-%E5%AD%90%E7%B3%BB%E7%B5%B1-linux-%E7%89%88-wsl2/)
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.