Board logo

標題: [教學] 安裝 WSL2 Ubuntu 22.04 及開發工具 [打印本頁]

作者: javacomhk    時間: 2022-6-4 14:05     標題: 安裝 WSL2 Ubuntu 22.04 及開發工具

本帖最後由 javacomhk 於 2022-9-24 12:37 編輯

(1) 開啟 Windows 功能 (Win+R 輸入optionalfeatures),
Windows Hypervisor 平台
Windows 子系統 Linux 版
虛擬機平台 (Virtualisation Platform)

[attach]2323644[/attach]

(2) 在 Windows Store 安裝 Ubuntu 22.04
[attach]2323540[/attach]

請留意樓下以下這句命令只會安裝 20.04版本而不是 22.04
wsl --install -d ubuntu

(3) 在 Windows Store 安裝 Windows Terminal
[attach]2323645[/attach]

(4) 使用 Administrator 身份 在  Windows Terminal 更新 wsl
(WSL 2 requires Windows 10 version 1903 or higher, with Build 18362 or higher) or Windows 11 (查看版本 Win+R 輸入winver)
  1. wsl --update
  2. wsl --set-version Ubuntu-22.04 2
  3. # 列出 wsl 現時的 Distro 及版本
  4. wsl --list --verbose
  5. # 如果有需要取消登錄 unregister 舊版本 Ubuntu-20.04
  6. wsl --unregister ubuntu
複製代碼
(5) 安裝 Visual Studio Code
https://code.visualstudio.com/
建議安裝 Visual Studio Code Windows 版本,Windows 可以用時,wsl 不同 distro 版本都可以用。

(6)  在 Visual Studio Code 安裝  Remote - WSL extension vscode:extension/ms-vscode-remote.remote-wsl


安裝 Visual Studio Code Windows 版本後要重啟電腦或登出用戶(Win+L) 去生效給 wsl 用。

(7) 用 Windows Terminal 開啟 Ubuntu 22.04 及第一次使用時需要設定 username 及 password

(8) 在 Ubuntu 22.04 更新及安裝開發工具
  1. sudo apt update
  2. sudo apt upgrade
  3. # install python 3
  4. sudo apt install python3 python3-pip python-is-python3
  5. python --version
  6. # Python 3.10.4
  7. mkdir helloWorld && cd helloWorld
  8. echo 'print("hello from python on ubuntu on windows!")' >> hello.py
  9. python hello.py
  10. # run  launch Visual Studio Code in WSL
  11. code .
複製代碼
(9) 安裝 nodejs
  1. # install nodejs
  2. sudo apt install nodejs npm
  3. node --version
  4. npm --version
複製代碼
更新nodejs 去 lts版本 v16.15.1
https://docs.microsoft.com/en-us ... cript/nodejs-on-wsl
  1. sudo apt-get install curl
  2. curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
  3. exit
  4. # start Ubuntu 22.04 again
  5. command -v nvm
  6. nvm install --lts
  7. nvm install node
  8. nvm use --lts
  9. node --version
  10. # v16.15.1
  11. npm --version
  12. # 8.11.0
複製代碼
(10) 安裝 Chrome Browser 後及 測試 nodejs 開發 reactjs 及 Google Apps Script https://www.hkepc.com/forum/viewthread.php?fid=26&tid=2662592

(11) 其他 Windows 11 (build 22000.*) WSLg Linux GUI App 安裝
  1. #例如 : Audacity (Ubuntu)
  2. sudo apt install audacity
  3. #例如 : flatpak 及 gimp
  4. sudo apt install flatpak
  5. # add repo
  6. flatpak --user remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
  7. # search app and install
  8. flatpak search gimp
  9. flatpak install flathub org.gimp.GIMP
複製代碼

作者: l0001    時間: 2022-6-4 14:51

提示: 作者被禁止或刪除 內容自動屏蔽
作者: l0001    時間: 2022-6-4 15:12

提示: 作者被禁止或刪除 內容自動屏蔽
作者: shal    時間: 2022-6-5 11:43

依家裝ubuntu 一句command 攪掂了或要最新版本更新
l0001 發表於 2022-6-4 14:51



    Windows11 22H1 開始已有 內置x server 系windows 層
Wsl2下可直接call gui program
作者: l0001    時間: 2022-6-5 12:02

提示: 作者被禁止或刪除 內容自動屏蔽
作者: l0001    時間: 2022-6-5 12:03

提示: 作者被禁止或刪除 內容自動屏蔽
作者: shal    時間: 2022-6-5 13:28

對的, 可以直接Call Linux gui來執行

冇記錯GUI生成應該係Weston + freerdp 而唔係X Server

via HKEPC  ...
l0001 發表於 2022-6-5 12:02



    Microsoft 官方wsl doc 寫系X11 and Wayland
作者: l0001    時間: 2022-6-5 15:51

提示: 作者被禁止或刪除 內容自動屏蔽
作者: VADER    時間: 2022-6-5 19:13

正正經經裝過ubuntu算喇....
作者: l0001    時間: 2022-6-5 20:18

提示: 作者被禁止或刪除 內容自動屏蔽
作者: javacomhk    時間: 2022-6-5 20:37

本帖最後由 javacomhk 於 2022-6-5 12:41 編輯

WSL2 嘅好處就係可以裝唔同嘅 distribution 唔同嘅 version,好似Docker 咁可以有唔同嘅 container,又lightweight 又唔會慢。
攞部舊notebook機,換隻大的嘅 SSD 就掂。
作者: ghostkcleung    時間: 2022-6-5 21:01

無試過,但無論如何個人主觀感覺都係好差,
我係一個好 Old School 嘅人。

我用 Linux 就係為咗逃避 MS Windows,
或許佢真係 Light Weight 又唔慢,
不過 Windows 本身自己已經好大食,
食 RAM,食 CPU,食效能…

喺個 Windows 裡面裝個 Linux,
或者喺個 Linux 裡面裝 Windows,
可能有人會有呢個需要,
不過我自己真係接受唔到。
作者: l0001    時間: 2022-6-5 23:56

提示: 作者被禁止或刪除 內容自動屏蔽
作者: javacomhk    時間: 2022-6-6 10:35

本帖最後由 javacomhk 於 2022-6-6 02:39 編輯

WSLg 仲可以好似 WS Android 咁用到 GPU 添啦。其實 Windows 開發呢幾套 Subsystems 就係要補足 Windows 嘅弱點,向佢的 Azure 嘅developer 行近的。





歡迎光臨 電腦領域 HKEPC Hardware (https://h2.hkepc.com/forum/) Powered by Discuz! 7.2