Skip to content

Thiết lập & Cấu hình WSL ​

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

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

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 hoàn thành chương này, hãy đọc Chương 2 để hiểu sự khác biệt giữa lệnh khả dụng và cài đặt thành công; nếu cài đặt vẫn gặp sự cố, 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ới Build 18362 hoặc cao hơn.
  • Windows 11: Tất cả các phiên bản đều được 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 qua "Windows Update" trước.

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

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

  • Cách kiểm tra: Mở "Trình quản lý tác vụ" -> tab "Hiệu suất" -> "CPU".
  • Kiểm tra trạng thái: Xác nhận trạng thái "Ảo hóa" ở góc dưới bên phải hiển thị "Đã bật".
  • Cách bật: Nếu chưa được bật, bạn cần khởi động lại máy tính để vào cài đặt BIOS/UEFI, tìm tùy chọn tương tự như Intel VT-x hoặc AMD-V và đặt thành Enabled.

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

Bạn cần bật các tính năng "Hệ thống con Windows dành cho Linux" và "Nền tảng máy ảo" của Windows.

Phương thức A: Thông qua giao diện đồ họa (Khuyến nghị) ​

  1. Nhấn Win + S, tìm kiếm và mở "Bật hoặc tắt tính năng Windows".
  2. Tích chọn hai mục sau:
    • Hệ thống con Windows dành cho Linux (Windows Subsystem for Linux)
    • Nền tảng máy ảo (Virtual Machine Platform)
  3. Nhấp "OK" và khởi động lại máy tính khi được nhắc.

Phương thức B: Thông 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 nền tảng máy ảo
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

Sau khi thực thi xong, hãy khởi động lại máy tính theo cách 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 các bản cập nhật WSL thông qua Microsoft Store.

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

Để đảm bảo các bản phân phối mới cài đặt sử dụng WSL 2 theo mặc định, hãy thực thi trong terminal:

powershell
wsl --set-default-version 2

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

  • Lỗi 0x80370102: Thường là do ảo hóa chưa được bật trong BIOS, hoặc 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-bản-phân-phối> 2 để nâng cấp instance WSL 1 hiện có lên WSL 2.

2. Lệnh khả dụng không có nghĩa là cài đặt thành công ​

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

Lệnh khả dụng 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 đáp ứng thêm các điều kiện bổ sung. Những điểm thường bị kẹt:

  1. Ảo hóa bị tắt: VT-x / AMD-V chưa được bật trong BIOS/UEFI, WSL 2 không thể khởi động, hoặc báo lỗi ảo hóa khi cài đặt bản phân phối (xem cách kiểm tra tại 1.2 Bật ảo hóa phần cứng).
  2. Phiên bản/Build Windows quá thấp: WSL 2 có yêu cầu về kernel và phiên bản, bản Home và image doanh nghiệp cũ có thể thiếu tính năng (xem cách kiểm tra tại 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 bản phân phối đã cài đặt, khi chưa cài gì thì danh sách trống, không có nghĩa là có thể chạy trực tiếp Ubuntu.
  4. Sự cố mạng / Microsoft Store: wsl --install -d <bản-phân-phối> cần tải image 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 bản phân phối hoặc thay đổi 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ỉ mới lấy được "tấm vé vào cửa", chưa thực sự cài đặt hệ thống.

3. Khắc phục sự cố cài đặt thất bại ​

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

3.1 Thực hiện "Kiểm tra một cú nhấp chuột" 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 đều thực thi trót lọt, 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 về cơ bản đã thỏa mãn.
  • ❌ Nếu thất bại, sẽ trực tiếp thông báo thiếu gì (như Nền tảng máy ảo, Hyper-V, ảo hóa BIOS, v.v.).

Sau đó thực thi systeminfo, xác nhận trong đầ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 thực thi wsl --install để cài đặt bản 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 có thể xác nhận các điều kiện cài đặt đã được đáp ứng hay chưa.

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

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

  1. Kiểm tra ảo hóa BIOS/phần sụn đã bật chưa: Trong PowerShell Quản trị viên thực thi systeminfo, đầu ra phải thấy Virtualization Enabled In Firmware: Yes.
  2. Kiểm tra các 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 có khả dụng không: Thực thi 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 đặt, hãy quay lại Chương 1.
  4. Kiểm tra có thể sử dụng WSL 2 không (kernel & nền tảng máy ảo): Thực thi wsl --set-default-version 2 phải trả về thành công. Nguyên nhân thất bại thường gặp: chưa bật Nền tảng máy ảo, 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 thường gặp ​

Tình huốngGiải thíchCá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 đặt thủ côngCài đặt 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 không hoạt động bình thường, WSL 2 thất bại khi đăng ký bản phân phối, tạo/gắn kết ext4.vhdx.

Thực hiện xác minh tối thiểu trước: Chạy PowerShell với tư cách Quản trị viên, thực thi 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 bả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 thành "Tự động" và khởi động nó.

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

  3. Thiếu trình điều khiển/thiết bị đĩa ảo: Mở Trình quản lý Thiết bị, kiểm tra trong "Thiết bị hệ thống / Bộ điều khiển lưu trữ" có tồn tại:

    • 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 (Bộ điều khiển lưu trữ → Microsoft → Microsoft VHD Loopback Controller), và xác nhận dịch vụ FsDepends không bị vô hiệu hóa.

  4. Image được nhập 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ự tiếng Trung, khoảng trắng và ký hiệu đặc biệt trong đường dẫn; không nhập từ ổ mạng, OneDrive, thư mục nén; nhất định dùng PowerShell Quản trị viên thực sự (không phải terminal thông thường).

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

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

TIP

Máy ảo bên thứ ba (VirtualBox, VMware) hoặc tính năng sandbox/tăng cường bảo mật của phần mềm bảo mật (như 360, Huorong) có thể gây nhiễu thao tác đĩa ảo, khi khắc phục sự cố có thể tạm thời tắt chúng rồi thử lại.