WSL là gì?
Windows Subsystem for Linux (WSL) là tính năng của Windows 10/11 cho phép chạy môi trường Linux ngay trên Windows. Bạn có được best‑of‑both‑worlds: app Windows quen thuộc + công cụ Linux mạnh mẽ. WSL ra mắt từ 2016 (WSL1) và nâng cấp lớn với WSL2 (kernel Linux thật) từ 2019. [Wikipedia]
WSL1 vs WSL2: Khác nhau ở đâu?
Tiêu chí | WSL1 | WSL2 |
|---|---|---|
Kiến trúc | Lớp tương thích syscall | VM nhẹ với kernel Linux thật |
Tương thích hệ thống | Hạn chế một số syscalls | Gần như đầy đủ |
I/O trong Linux | Thấp hơn | Cao hơn rõ rệt |
Truy cập file Windows từ Linux | Nhanh hơn | Chậm hơn |
GUI app (WSLg) | Không | Có |
GPU cho AI/ML | Không | Có (CUDA on WSL) |
Khuyến nghị: chọn WSL2 làm mặc định. Bạn vẫn có thể chạy song song WSL1 nếu có case đặc thù. [Learn Microsoft] [Developer NVIDIA]
Cài đặt WSL trên Windows (cực nhanh)
Yêu cầu: Windows 10 2004+ hoặc Windows 11, quyền admin.
- Mở PowerShell/Terminal (Admin) và chạy:
wsl --installLệnh này bật các thành phần cần thiết và cài distro Ubuntu mặc định. [Learn Microsoft]
- Khởi động lại máy → mở Ubuntu từ Start Menu → đặt username/password Linux.
- Cập nhật WSL và kernel khi cần:
wsl --update- Đặt WSL2 làm mặc định (nếu cần):
wsl --set-default-version 2Cài distro khác (tùy chọn):
wsl --install -d DebianBạn có thể làm gì với WSL?
- Chạy ứng dụng Linux và tool CLI: grep, sed, awk, git, lsb_release…
- Dùng WSLg để chạy GUI app Linux như GIMP ngay trong Windows. [Learn Microsoft]
- Dev cross‑platform: Node, Python, Ruby, Go… trong Linux, nhưng vẫn xài VS Code trên Windows với extension Remote – WSL. [VS Code]
- AI/ML có GPU: chạy TensorFlow, PyTorch trên WSL2 với CUDA tăng tốc. [Learn Microsoft]
- Truy cập file 2 chiều:
- Từ Linux → Windows:
/mnt/c,/mnt/d… - Từ Windows → Linux:
\wsl$<DistroName>
- Từ Linux → Windows:
- Thiết lập dịch vụ: MySQL, PostgreSQL, Nginx/Apache để dev web nhanh gọn.
Ví dụ nhanh Python:
mkdir hello && cd hello
printf 'print("Xin chào từ Python trên Ubuntu!")\\n' > [hello.py](<http://hello.py>)
python3 [hello.py](<http://hello.py>)Tài liệu Microsoft “What is WSL” mô tả chi tiết các khả năng này. [Learn Microsoft]
Mẹo hiệu năng và thực hành tốt
- Dự án WSL2 nên để trong Linux FS:
/home/<user>/projectsđể I/O nhanh. - Tránh thao tác nặng ở /mnt/c (NTFS) từ Linux.
- VS Code: dùng “Remote – WSL” để mở thư mục Linux trực tiếp.
- Nếu bật systemd trong WSL2, chỉ kích hoạt dịch vụ cần thiết để tiết kiệm tài nguyên.
- Giải phóng RAM khi cần:
wsl --shutdown. - Với monorepo lớn: exclude thư mục build/cache khỏi index của IDE.
FAQ
- WSL2 có nặng máy không?
- RAM dùng theo nhu cầu và giải phóng khi
wsl --shutdown. Máy ít RAM vẫn ổn nếu quản lý dịch vụ tốt.
- RAM dùng theo nhu cầu và giải phóng khi
- Dùng song song WSL1 và WSL2 được không?
- Được. Có thể gán version riêng cho từng distro bằng
wsl --set-version <Distro> 1|2.
- Được. Có thể gán version riêng cho từng distro bằng
- Có chạy app Linux có GUI không?
- Có, nhờ WSLg trên Windows 11 và bản WSL mới. [Learn Microsoft]
- Tôi nên chọn distro nào?
- Ubuntu là mặc định, dễ dùng. Bạn có thể thử Debian, Kali… tùy nhu cầu.
- Có hỗ trợ GPU cho AI/ML?
- Có trên WSL2 (CUDA on WSL). Cần driver và thiết lập theo hướng dẫn của NVIDIA/Microsoft. [Developer NVIDIA]
Kết luận
WSL biến Windows thành “máy đa hệ”: giữ tiện lợi Windows, thêm sức mạnh Linux. Chọn WSL2, đặt project đúng chỗ, dùng VS Code Remote – WSL, bạn sẽ có trải nghiệm dev vừa nhanh vừa mượt.