Skip to content

Cấu hình WSL ​

Trước khi sử dụng WSL Dashboard, hệ thống Windows của bạn phải được bật và cấu hình đúng môi trường WSL 2. Tài liệu này gồm ba phần chính:

  1. Bật và cấu hình WSL: Hoàn tất cài đặt và cấu hình cơ bản của WSL 2.
  2. Lệnh chạy được ≠ Cài đặt thành công: Giải thích rằng lệnh wsl chạy được không có nghĩa là có thể cài đặt Linux thành công.
  3. Kiểm tra sự cố cài đặt thất bại: Phương pháp kiểm tra và khắc phục khi cài đặt vẫn thất bại sau khi cấu hình xong.

1. Bật và cấu hình WSL ​

Chương này sẽ hướng dẫn bạn hoàn tất các thiết lập cơ bản cần thiết. Sau khi xong chương này, hãy đọc Chương 2 để hiểu sự khác biệt giữa lệnh chạy được và cài đặt thành công; nếu cài đặt vẫn có vấn đề, hãy tham khảo Chương 3.

1.1 Kiểm tra yêu cầu hệ thống ​

WSL 2 có yêu cầu tối thiểu về phiên bản Windows. Nhấn Win + R, nhập winver để kiểm tra phiên bản của bạn:

  • Windows 10: Phiên bản 1903 trở lên, và số Build phải từ 18362 trở lên.
  • Windows 11: Tất cả phiên bản đều hỗ trợ.

IMPORTANT

Nếu phiên bản của bạn quá thấp, hãy nâng cấp hệ thống trước qua "Windows Update".

1.2 Bật ảo hóa phần cứng ​

WSL 2 chạy trên nền công nghệ ảo hóa, vì vậy phải bật Virtualization Technology (Công nghệ ảo hóa) trong BIOS/UEFI của bo mạch chủ.

  • Cách kiểm tra: Mở "Task Manager" -> tab "Performance" -> "CPU".
  • Xem trạng thái: Đảm bảo trạng thái "Virtualization" ở góc phải dưới hiển thị "Enabled".
  • Cách bật: Nếu chưa bật, bạn cần khởi động lại máy vào BIOS/UEFI, tìm tùy chọn như Intel VT-x hoặc AMD-V và đặt thành Enabled.

1.3 Bật các tính năng liên quan của Windows ​

Bạn cần bật tính năng "Windows Subsystem for Linux" và "Virtual Machine Platform".

Cách A: Qua giao diện đồ họa (Khuyến nghị) ​

  1. Nhấn Win + S, tìm và mở "Bật hoặc tắt tính năng Windows".
  2. Tích chọn hai mục sau:
    • Windows Subsystem for Linux
    • Virtual Machine Platform
  3. Nhấp "OK" và khởi động lại máy tính khi được nhắc.

Cách B: Qua dòng lệnh (Quyền quản trị viên) ​

Chạy PowerShell với tư cách quản trị viên và thực thi các lệnh sau:

powershell
# Bật WSL
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

# Bật Virtual Machine Platform
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

Sau khi thực hiện xong, hãy khởi động lại máy tính thủ công.

1.4 Cài đặt/cập nhật kernel WSL ​

Các phiên bản Windows hiện đại có thể nhận bản cập nhật WSL qua Microsoft Store.

1.5 Đặt WSL 2 làm phiên bản mặc định ​

Để đảm bảo phân phối mới cài mặc định dùng WSL 2, thực thi trong terminal:

powershell
wsl --set-default-version 2

1.6 Câu hỏi thường gặp ​

  • Lỗi 0x80370102: Thường do không bật ảo hóa trong BIOS, hoặc xung đột với Hyper-V.
  • Chuyển đổi giữa WSL 1 và WSL 2: Bạn có thể dùng wsl --set-version <tên-phân-phối> 2 để nâng cấp instance WSL 1 hiện có lên WSL 2.

2. Lệnh chạy được ≠ Cài đặt thành công ​

Các lệnh như wsl --version, wsl -l -v chạy được bình thường không có nghĩa là bạn đã có điều kiện cài đặt Linux. Hai thứ này ở các giai đoạn khác nhau, không thể đánh đồng.

Lệnh chạy được chỉ có nghĩa là:

  • ✅ Các thành phần WSL trong Windows đã được bật/cài đặt
  • ✅ Công cụ dòng lệnh wsl.exe khả dụng
  • ✅ Hệ thống nhận diện được các lệnh liên quan đến WSL

Nhưng để cài đặt thành công bản phân phối Linux, còn cần thêm điều kiện. Những chỗ thường bị kẹt:

  1. Ảo hóa bị tắt: Không bật VT-x / AMD-V trong BIOS/UEFI, WSL 2 không khởi động được, hoặc báo lỗi ảo hóa khi cài đặt phân phối (cách kiểm tra xem 1.2 Bật ảo hóa phần cứng).
  2. Phiên bản/số Build Windows quá thấp: WSL 2 có yêu cầu về kernel và phiên bản; bản Home, ảnh doanh nghiệp quá cũ có thể thiếu chức năng (cách kiểm tra xem 1.1 Kiểm tra yêu cầu hệ thống).
  3. Chưa thực sự cài đặt bản phân phối Linux: wsl -l -v chỉ liệt kê các phân phối đã cài đặt; chưa cài gì thì danh sách rỗng, không có nghĩa là có thể chạy Ubuntu ngay.
  4. Sự cố mạng / Microsoft Store: wsl --install -d <phân-phối> cần kéo ảnh từ Store hoặc mạng; mạng công ty, proxy, tường lửa đều có thể chặn.
  5. Không đủ quyền: Cài đặt phân phối hoặc sửa cài đặt WSL cần quyền quản trị viên.

TIP

Nói ngắn gọn: Lệnh WSL dùng được ≠ Linux đã sẵn sàng, chỉ là có "vé vào cửa", hệ thống chưa thực sự được cài.

3. Kiểm tra sự cố cài đặt thất bại ​

Sau khi cấu hình theo Chương 1 xong (hoặc bạn cho rằng đã xong), nếu chạy wsl --install vẫn thất bại, hãy kiểm tra theo thứ tự sau.

3.1 Làm "kiểm tra một cú nhấp" trước ​

Chạy PowerShell với tư cách quản trị viên, thực thi lần lượt:

powershell
wsl --install --no-distribution
wsl --set-default-version 2
  • ✅ Nếu cả hai lệnh này chạy trơn tru, nghĩa là các thành phần tùy chọn của WSL đã được bật, điều kiện ảo hóa cơ bản đạt.
  • ❌ Nếu thất bại, sẽ báo trực tiếp thiếu gì (như Virtual Machine Platform, Hyper-V, ảo hóa BIOS, v.v.).

Sau đó chạy systeminfo, xác nhận đầu ra có Virtualization Enabled In Firmware: Yes. Nếu không có lỗi nào ở trên, về cơ bản có thể yên tâm chạy wsl --install để cài phân phối.

NOTE

Không có lệnh nào đảm bảo 100% wsl --install sẽ thành công, nhưng các kiểm tra trên xác nhận được điều kiện cài đặt đã đủ hay chưa.

3.2 Danh sách kiểm tra thủ công ​

Nếu "kiểm tra một cú nhấp" vẫn không xác định được vấn đề, hãy kiểm tra từng mục:

  1. Kiểm tra ảo hóa BIOS/firmware đã bật chưa: Chạy systeminfo trong PowerShell quản trị viên, đầu ra phải thấy Virtualization Enabled In Firmware: Yes.
  2. Kiểm tra tính năng Windows đã bật chưa:
    powershell
    Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
    Get-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform
    Trạng thái của cả hai lệnh phải là Enabled.
  3. Kiểm tra WSL khả dụng không: Chạy wsl --version phải có đầu ra bình thường; nếu báo lệnh không tồn tại, nghĩa là thành phần WSL chưa được cài, hãy quay lại Chương 1.
  4. Kiểm tra có thể dùng WSL 2 không (kernel & Virtual Machine Platform): Chạy wsl --set-default-version 2 phải trả về thành công. Nguyên nhân thất bại phổ biến: chưa bật Virtual Machine Platform, hoặc chưa bật VT-x / AMD-V trong BIOS.

3.3 Tra cứu nhanh nguyên nhân thất bại phổ biến ​

Tình huốngMô tảCách xử lý
Chưa bật ảo hóa trong BIOSChắc chắn thất bạiKhởi động lại vào BIOS bật VT-x / AMD-V (xem 1.2)
Windows 10 dưới 19041Không hỗ trợ wsl --installNâng cấp hệ thống (xem 1.1)
Môi trường doanh nghiệp vô hiệu hóa Hyper-V / ảo hóaCó thể thất bạiLiên hệ quản trị viên hệ thống
Hệ thống bản Home cũCần cài thủ côngCài kernel WSL thủ công theo 1.4

3.4 Lỗi 0xc03a0014: Không tìm thấy nhà cung cấp hỗ trợ đĩa ảo ​

Thông báo lỗi là Cannot find a virtual disk support provider for the specified file. Đây không phải vấn đề của bản phân phối Linux, mà là ngăn xếp đĩa ảo VHD/VHDX của Windows hoạt động không bình thường, khiến WSL 2 thất bại trong việc đăng ký phân phối, tạo/gắn ext4.vhdx.

Làm xác minh tối thiểu trước: Chạy PowerShell với tư cách quản trị viên, chạy thử New-VHD (ví dụ New-VHD -Path C:\test.vhdx -SizeBytes 1GB). Nếu lệnh này cũng báo lỗi tương tự, vấn đề 100% nằm ở phía Windows, không liên quan đến phân phối.

Kiểm tra và khắc phục theo thứ tự sau:

  1. Dịch vụ Virtual Disk chưa chạy: Mở services.msc, tìm dịch vụ Virtual Disk, đặt kiểu khởi động là "Tự động" và khởi động nó.

  2. Tính năng WSL / Virtual Machine Platform chưa bật (hoặc chưa có hiệu lực): Chạy lại các lệnh trong 1.3 Bật các tính năng liên quan của Windows, sau đó phải khởi động lại. Windows bản Home không có Hyper-V đầy đủ, nhưng WSL 2 chỉ cần Virtual Machine Platform, không phải giao diện quản lý Hyper-V.

  3. Thiếu driver/thiết bị đĩa ảo: Mở Device Manager, kiểm tra xem trong "System devices / Storage controllers" có:

    • Microsoft Virtual Disk Provider
    • Microsoft Virtual Drive Enumerator
    • Microsoft VHD Loopback Controller

    Nếu thiếu, có thể thêm thủ công qua hdwwiz.exe (Storage controllers → Microsoft → Microsoft VHD Loopback Controller), và xác nhận dịch vụ FsDepends không bị vô hiệu hóa.

  4. Ảnh nhập vào không đáp ứng yêu cầu WSL: Khi dùng wsl --import --vhd, VHDX phải là hệ thống tệp ext4, không được là đĩa mã hóa LUKS, raw.img thông thường, Live ISO, hoặc đĩa trống định dạng NTFS/FAT. .img / .qcow2 / .iso không thể trực tiếp wsl --import --vhd.

  5. Sự cố đường dẫn/quyền/hệ thống tệp: Thư mục đích phải nằm trên đĩa NTFS (FAT32/exFAT không được); tránh ký tự Trung, khoảng trắng và ký tự đặc biệt trong đường dẫn; không nhập từ ổ mạng, OneDrive, thư mục nén; phải dùng PowerShell quản trị viên thực sự (không phải terminal thường).

  6. Thành phần hệ thống bị hỏng: Lần lượt chạy DISM và SFC để sửa thành phần hệ thống, sau đó thử lại:

    powershell
    DISM.exe /Online /Cleanup-Image /RestoreHealth
    sfc /scannow

TIP

Máy ảo của bên thứ ba (VirtualBox, VMware) hoặc chức năng sandbox/tăng cường của phần mềm bảo mật (như 360, Huorong) có thể can thiệp vào thao tác đĩa ảo; khi kiểm tra có thể tắt tạm rồi thử lại.