1) Yêu cầu và lưu ý trước khi bắt đầu
Windows 10/11, khuyến nghị phiên bản 2004 trở lên
Ổ D trống > 20 GB để chứa distro, tránh phình ổ C
Mục tiêu: “cài Ubuntu GUI WSL2” để code, chạy tool Linux, mở app GUI cơ bản
2) Bật WSL và Virtual Machine Platform
Mở PowerShell (Run as Administrator) và chạy:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
Khởi động lại máy.
Nếu chưa có kernel WSL2, tải từ Learn Microsoft: Cài đặt và cập nhật WSL hoặc tải nhanh từ Microsoft: Tải gói kernel.
3) Tải Ubuntu rootfs (không cần Microsoft Store)
Chọn Ubuntu 22.04 (jammy) từ Canonical: Ubuntu rootfs.
Lưu file
.tar.gz
, ví dụ:D:\\WSL\\temp\\ubuntu-jammy-wsl-amd64-rootfs.tar.gz
4) Import Ubuntu vào ổ D bằng WSL2
Tạo thư mục chứa distro:
mkdir D:\\WSL\\Ubuntu
Import Ubuntu và đặt tên distro là UbuntuD
:
wsl --import UbuntuD D:\\WSL\\Ubuntu D:\\WSL\\temp\\ubuntu-jammy-wsl-amd64-rootfs.tar.gz --version 2
Nếu lỗi
HCS_E_SERVICE_NOT_AVAILABLE
, hãy cập nhật WSL2 kernel theo link Microsoft ở trên rồi chạy lại.
5) Bật systemd để dùng systemctl
Mở Ubuntu (WSL) và tạo file cấu hình:
sudo nano /etc/wsl.conf
Thêm:
[boot]
systemd=true
Thoát Ubuntu, về PowerShell chạy:
wsl --shutdown
Mở lại Ubuntu và kiểm tra:
ps -p 1 -o comm=
Trả về systemd
là OK.
6) Cài Ubuntu GUI (GNOME) + app cơ bản
Cập nhật và cài đặt GNOME:
sudo apt update && sudo apt upgrade -y
sudo apt install ubuntu-desktop gnome-terminal gnome-system-monitor nautilus x11-apps -y
7) Cài VcXsrv trên Windows để hiển thị GUI
Tải VcXsrv từ SourceForge: Trình X server cho Windows.
Cấu hình khởi động đề xuất:
Multiple windows
Start no client
Disable access control ✅
8) Cấu hình biến môi trường DISPLAY
Trong Ubuntu, chạy:
echo 'export DISPLAY=$(grep nameserver /etc/resolv.conf | awk "{print $2}"):0.0' >> ~/.bashrc
source ~/.bashrc
Mục tiêu là để app GUI biết địa chỉ X server (VcXsrv) ở Windows.
9) Test GUI
Mở VcXsrv trước, sau đó chạy trong Ubuntu:
gnome-system-monitor
gnome-terminal
nautilus
Hiện cửa sổ là “cài Ubuntu GUI WSL2” đã thành công.
10) Xử lý lỗi phổ biến (systemctl, preset, whoopsie, openvpn…)
Nếu gặp lỗi:
Failed to preset unit: Transport endpoint is not connected
systemctl preset failed on whoopsie.service: No such file or directory
Thường do systemd chưa bật hoặc service không áp dụng trong WSL2. Không ảnh hưởng dùng GUI hay lập trình.
Đã bật systemd rồi có thể bỏ qua. Nếu muốn dọn dẹp:
sudo apt remove whoopsie openvpn acpid --purge -y
sudo apt autoremove -y
11) Tạo file .bat để mở Ubuntu GUI thật nhanh
Tạo file Ubuntu_GUI.bat
ở Desktop với nội dung:
@echo off
start "" "C:\\\\Program Files\\\\VcXsrv\\\\vcxsrv.exe" :0 -multiwindow -clipboard -ac
timeout /t 2
wsl -d UbuntuD
Nhấn đúp là vào thẳng Ubuntu GUI. Tiết kiệm được vài chục giây mỗi ngày, vui phết!
Hỏi nhanh đáp gọn (FAQ)
Có nên cài vào ổ C không? Không. Ổ C dễ phình to, backup khó. Ổ D gọn gàng, dễ quản lý.
GNOME nặng không? Ổn với nhu cầu dev cơ bản. Máy yếu có thể chọn XFCE để nhẹ hơn.
Dùng máy ảo song song được không? Được, nhưng “cài Ubuntu GUI WSL2” thường là đủ cho dev web.
Kết luận
Nếu mục tiêu của bạn là “cài Ubuntu GUI WSL2” để code nhanh, mượt, không rối rắm máy ảo, combo WSL2 + GNOME + VcXsrv là đủ xài và dễ bảo trì. Sau vài bước là có môi trường Linux đồ họa ổn định ngay trong Windows, tiết kiệm tài nguyên và chủ động backup trên ổ D. Chúc bạn setup một lần là chạy êm!