- WSL2 cho phép bạn chạy các bản phân phối Linux với nhân hệ điều hành thực và khả năng tích hợp sâu trên Windows 10 và 11 mà không cần đến chế độ khởi động kép hoặc máy ảo nặng nề.
- Quá trình cài đặt dựa trên việc kích hoạt hệ thống con và nền tảng máy ảo, sử dụng lệnh wsl --install và thêm các bản phân phối như Ubuntu từ Microsoft Store.
- WSL2 cung cấp hiệu năng và khả năng tương thích tuyệt vời cho việc phát triển và quản trị, mặc dù nó không thể thay thế hoàn toàn một hệ điều hành Linux gốc trong các kịch bản máy chủ hoặc máy tính để bàn hoàn chỉnh.
- Với Windows Terminal và Docker, WSL2 trở thành một môi trường làm việc rất mạnh mẽ, duy trì quyền truy cập trực tiếp vào hệ sinh thái và các công cụ của Windows.
Sử dụng Linux trong Windows 11 với WSL2 và Ubuntu Nó đã trở thành một trong những cách thuận tiện nhất để có được những lợi ích tốt nhất của cả hai thế giới mà không cần phải loay hoay với việc phân chia không gian. khởi đầu kép Bạn cũng không cần đến các máy ảo nặng nề. Nếu bạn chuyển từ Linux hoặc chỉ cần các công cụ GNU/Linux thông thường để phát triển, quản trị hệ thống hoặc kiểm thử, bạn nên tận dụng tối đa tính năng này.
Trong bài viết này bạn sẽ thấy WSL và WSL2 thực chất là gì, ưu điểm và nhược điểm của chúng so với máy ảo hoặc chế độ khởi động kép là gì,Bài viết này sẽ hướng dẫn bạn các yêu cầu thực tế cần đáp ứng, cách cài đặt hệ thống con từng bước trên Windows 10 và Windows 11, cách thêm Ubuntu (hoặc các bản phân phối khác), cách làm việc với chúng từ Windows Terminal, cùng một số thủ thuật, cách sử dụng nâng cao và các sự cố thường gặp.
WSL là gì và tại sao nó lại quan trọng trong Windows 10 và Windows 11?
WSL (Hệ thống con của Windows dành cho Linux) Đây là một tính năng được tích hợp sẵn trong Windows 10 và Windows 11 cho phép bạn chạy các bản phân phối GNU/Linux như thể chúng chỉ là một ứng dụng hệ thống khác. Thay vì thiết lập hệ thống khởi động kép hoặc một máy ảo hoàn chỉnh, bạn cài đặt một bản phân phối (Ubuntu, Debian, Kali, Fedora, Alpine, SUSE, Arch, v.v.) từ Microsoft Store và sử dụng nó trong cửa sổ terminal với quyền truy cập vào hầu hết các công cụ dòng lệnh Linux.
Thế hệ đầu tiên, được gọi là WSL1 chuyển đổi các lệnh gọi Linux thành nhân Windows. Thông qua một lớp tương thích. Điều này cho phép nhiều công cụ hoạt động rất tốt, nhưng nó có những hạn chế đối với các ứng dụng cần truy cập nhân hệ điều hành cấp thấp hoặc một số khả năng về mạng và hệ thống tập tin.
với Với WSL2, Microsoft đã thực hiện một bước tiến quan trọng.Hiện nay, toàn bộ nhân Linux chạy bên trong một máy ảo nhẹ được quản lý bởi nền tảng ảo hóa của Windows (ở cấp độ thấp hơn là Hyper-V). Điều này mang lại khả năng tương thích gần như hoàn toàn với các lệnh gọi hệ thống và cải thiện đáng kể hiệu năng trong nhiều tác vụ, thậm chí vượt trội hơn cả Windows gốc trong các bài kiểm tra hiệu năng tổng hợp như Geekbench trong một số trường hợp nhất định.
Điều tuyệt vời nhất chính là ở chỗ đó WSL2 không giống như một máy ảo thông thường.Nó tích hợp với hệ thống tệp của Windows, khởi động chỉ trong vài giây, tiêu thụ ít bộ nhớ hơn nhiều so với máy ảo truyền thống và được quản lý như bất kỳ ứng dụng nào khác, không có bảng điều khiển phức tạp hoặc cấu hình rắc rối.
Đối với các nhà phát triển, quản trị viên và người dùng tò mò, điều này có nghĩa là: Bạn có thể sử dụng các công cụ tương tự như trên một hệ thống Linux gốc. (bash, git, ssh, Docker, máy chủ, trình biên dịch, trình quản lý gói, v.v.) hoạt động song song với PowerShell, File Explorer và phần còn lại của hệ sinh thái Windows.
Những điểm khác biệt chính giữa WSL và WSL2
Mặc dù bề ngoài chúng có vẻ giống nhau, Về cơ bản, WSL1 và WSL2 hoạt động rất khác nhau.Điều đó ảnh hưởng đến hiệu năng, khả năng tương thích và mức sử dụng tài nguyên. Việc hiểu rõ sự khác biệt giữa các phương pháp là rất quan trọng để biết khi nào nên sử dụng từng phương pháp.
với WSL1, Linux hoạt động thông qua một lớp dịch thuật. Quá trình này chuyển đổi các lệnh gọi hệ thống (syscalls) thành các lệnh gọi tương thích với nhân Windows. Điều này giúp giảm thiểu tiêu hao tài nguyên và thời gian khởi động cực nhanh, nhưng lại hạn chế khả năng tương thích với các phần mềm dựa trên nhân thực sự, đặc biệt là các dịch vụ yêu cầu các tính năng mạng nâng cao, hệ thống tập tin hoặc các mô-đun nhân.
En WSL2 thực sự có một nhân Linux chạy bên trong một máy ảo nhỏ. Nó sử dụng công nghệ Hyper-V, nhưng được đóng gói liền mạch đến mức người dùng hầu như không nhận ra. Điều này cải thiện đáng kể khả năng tương thích (bạn có thể sử dụng Docker gốc, các máy chủ phức tạp hơn, cơ sở dữ liệu, v.v.) và hiệu suất trong các hoạt động I/O, biên dịch nặng hoặc truy cập đĩa chuyên sâu.
Về vấn đề hội nhập, Cả hai phiên bản đều cho phép chia sẻ hệ thống tập tin với Windows. và thực thi các lệnh từ PowerShell hoặc dấu nhắc lệnh, nhưng WSL2 đã cải thiện đáng kể khả năng truy cập vào /mnt/ và các ổ đĩa còn lại, đến mức bạn có thể điều hướng đến hệ thống tệp Linux của mình ngay từ File Explorer.
Tóm lại, ý chính là: WSL1 rất nhẹ nhưng có một số hạn chế.Trong khi WSL2 cung cấp khả năng tương thích gần như hoàn toàn với hệ điều hành Linux thực sự. Với cái giá phải trả là phải dựa vào một máy ảo được tối ưu hóa đến mức, trên thực tế, nó không giống như một máy ảo truyền thống.
Các yêu cầu để cài đặt WSL và WSL2 trên Windows 10 và Windows 11
Trước khi triển khai, bạn cần kiểm tra xem nhóm của mình có đáp ứng các yêu cầu hay không. Các yêu cầu hệ thống tối thiểu cho WSL và WSL2đặc biệt nếu bạn vẫn đang sử dụng Windows 10.
đến WSL (phiên bản đầu tiên)Hầu như bất kỳ phiên bản Windows 10 hoặc 11 64-bit nào được cập nhật đều hoạt động được. Điều bạn thực sự cần tập trung vào là yêu cầu hệ thống. WSL2:
- Cửa sổ 10 x64- Phiên bản 1903 trở lên, với bản dựng 18362 trở lên.
- Windows 10 ARM64Phiên bản 2004 trở lên, với bản dựng 19041 trở lên.
- cửa sổ 11Nó hỗ trợ WSL2 gần như là tính năng tiêu chuẩn, miễn là hệ điều hành được cập nhật.
Nếu hệ thống của bạn không đáp ứng được các yêu cầu cấu hình đó, Bạn sẽ không thể sử dụng WSL2. Mặc dù WSL1 được hỗ trợ. Giải pháp là cập nhật Windows bằng Windows Update hoặc trình trợ giúp cập nhật chính thức của Microsoft.
Để kiểm tra phiên bản chính xác của hệ thống, chỉ cần Mở cửa sổ Run bằng cách nhấn tổ hợp phím Windows + R và gõ "winver".Ở đó bạn sẽ thấy cả phiên bản và số bản dựng. Nếu bạn thấy các số như 1903, 2004, 20H2, 21H1, 21H2, v.v., thì nhìn chung bạn đang sử dụng WSL2.
Về mặt phần cứng, bạn cần Bộ xử lý 64-bit hỗ trợ ảo hóa (VT-x trên Intel, AMD-V trên AMD) và tùy chọn này đã được bật trong BIOS/UEFI. Bạn có thể kiểm tra ảo hóa Bạn có thể dễ dàng thực hiện điều này bằng cách mở Trình quản lý tác vụ (Ctrl+Shift+Esc), chọn tab Hiệu năng, mục CPU và kiểm tra xem trường "Ảo hóa" có hiển thị là "Đã bật" hay không.
Hướng dẫn cài đặt WSL2 nhanh chóng trên Windows 11
Trong Windows 11 (và cả Windows 10 tương đối hiện đại) Cách đơn giản nhất để cài đặt WSL2 là chỉ với một lệnh duy nhất.mà không cần phải tự tay chọn các ô trong phần tính năng tùy chọn.
Bạn chỉ phải Mở PowerShell với quyền quản trị viên. (Nhấp chuột phải vào nút Bắt đầu → Windows Terminal (Admin) hoặc PowerShell (Admin)) và khởi chạy:
wsl –cài đặt
Với lệnh này, Windows tự động kích hoạt các tính năng cần thiết. Đối với WSL và WSL2, hãy cài đặt nền tảng máy ảo và tải xuống bản phân phối Linux mặc định (thường là Ubuntu hiện nay). Sau khi hoàn tất, bạn sẽ được yêu cầu khởi động lại máy tính để hoàn thành thiết lập.
Lần đầu tiên khởi động bản phân phối vừa cài đặt, một cửa sổ dòng lệnh sẽ hiện ra, trong đó... Các tập tin Linux đã được giải nén và cấu hình.Quá trình này chỉ mất một chút thời gian trong lần đầu tiên; các lần chạy tiếp theo sẽ bắt đầu trong chưa đến một giây.
Nếu bạn muốn thay đổi bản phân phối được cài đặt mặc định, bạn có thể sử dụng tham số. -d trong chính lệnh cài đặt, hoặc liệt kê tất cả các tùy chọn có sẵn bằng cách:
- wsl.exe –list –online Để xem các bản phân phối có sẵn trong cửa hàng.
- wsl.exe –install DistroName Để cài đặt một hệ điều hành cụ thể (ví dụ: Ubuntu, Debian, Kali-linux, openSUSE, v.v.).
Hướng dẫn cài đặt WSL2 từng bước trên Windows 10
Nếu bạn vẫn đang sử dụng Windows 10 hoặc muốn tự mình thực hiện quy trình này, Bạn có thể kích hoạt WSL và WSL2 theo một vài bước rất đơn giản.có thể thực hiện thông qua giao diện đồ họa hoặc các lệnh PowerShell.
Từ giao diện truyền thống, điều bạn cần làm là: Mở cửa sổ các tính năng tùy chọn của Windows. Nhấn Windows + R, nhập OptionalFeatures.exe và chấp nhận. Trong danh sách hiện ra, hãy chọn ít nhất các ô sau:
- Hệ thống con Windows cho Linux (Hệ thống con Windows dành cho Linux).
- Nền tảng máy ảo (Nền tảng máy ảo), cần thiết cho WSL2.
Sau khi áp dụng các thay đổi, Windows sẽ cài đặt các thành phần và Nó sẽ yêu cầu bạn khởi động lại hệ thống.Hãy làm như vậy để đảm bảo quá trình kích hoạt thành công.
Nếu bạn thích sử dụng phương pháp điều khiển bằng máy console, bạn cũng có thể đạt được kết quả tương tự. Chạy một vài lệnh DISM và PowerShell. với quyền của quản trị viên:
- Kích hoạt hệ thống con Linux: dism.exe / online / enable-feature / featurename: Microsoft-Windows-Subsystem-Linux / all / norestart
- Kích hoạt nền tảng máy ảo: dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all
Sau khi thực hiện các bước này, hãy khởi động lại máy tính theo cách thủ công. Sau đó, nên làm như sau: Cài đặt bản cập nhật nhân Linux cho WSL2Microsoft phân phối nó thông qua trình cài đặt riêng của họ. Bạn có thể tải xuống từ trang web chính thức của WSL (trong Azure blob) và chỉ cần làm theo trình hướng dẫn "Tiếp theo → Tiếp theo → Hoàn tất" quen thuộc.
Cuối cùng, cần làm rõ rằng WSL2 sẽ là phiên bản mặc định. Khi bạn cài đặt các bản phân phối mới. Để làm điều này, hãy mở PowerShell với quyền quản trị viên và chạy lệnh sau:
wsl –set-default-phiên bản 2
Như vậy, mỗi khi bạn tải xuống bản phân phối Linux từ Microsoft Store, Nó sẽ được cấu hình mặc định trên WSL2. thay vì WSL1.
Cài đặt Ubuntu và các bản phân phối Linux khác từ Microsoft Store.
Khi hệ thống con đi vào hoạt động, Bây giờ bạn cần chọn bản phân phối GNU/Linux mà bạn muốn sử dụng.Cách dễ nhất là tìm kiếm nó trong Microsoft Store, giống như cách bạn cài đặt bất kỳ ứng dụng nào khác.
Mở Hãy vào Microsoft Store và nhập "Ubuntu" hoặc đơn giản là "Linux". Trong công cụ tìm kiếm, bạn sẽ thấy danh sách các bản phân phối tương thích với WSL, bao gồm:
- Ubuntu (ở nhiều phiên bản LTS khác nhau, chẳng hạn như 20.04 hoặc 22.04).
- Debian.
- KaliLinux.
- openSUSE / SUSE Linux Enterprise.
- Fedora, Alpine, Arch và các biến thể khác, tùy thuộc vào thời điểm.
Chọn mục bạn quan tâm, sau đó nhấp vào. Cài đặt hoặc Tải xuống và để Windows tải xuống và cài đặt hình ảnh. Khi hoàn tất, bạn sẽ thấy một biểu tượng mới trong menu Bắt đầu với tên của bản phân phối (ví dụ: "Ubuntu 20.04 LTS").
Lần đầu tiên bạn chạy chương trình, quá trình cài đặt nội bộ sẽ được hoàn tất. Bạn sẽ được yêu cầu tạo tên người dùng và mật khẩu Linux.Các tài khoản này không cần phải liên kết với tài khoản Windows của bạn; chúng là các tài khoản riêng biệt. Sau đó, bạn có thể sử dụng bản phân phối ở chế độ terminal bất cứ khi nào bạn muốn.
Nếu vì bất kỳ lý do nào mà Ubuntu của bạn ban đầu được cài đặt dưới dạng WSL1, bạn có thể chuyển đổi nó sang WSL2 bằng cách chạy lệnh sau trong PowerShell (với quyền quản trị viên):
wsl –set-phiên bản Ubuntu-20.04 2
Hãy điều chỉnh tên bản phân phối nếu bạn đang sử dụng phiên bản hoặc bản phân phối khác. Hệ thống sẽ thực hiện chuyển đổi và sau khi hoàn tất sẽ hiển thị thông báo như "Chuyển đổi hoàn tất", cho biết rằng hệ thống hiện đang chạy trên WSL2.
Quản lý các phiên bản, bản phân phối và các lệnh WSL cơ bản.
Khi bạn đã cài đặt một vài bản phân phối Linux, điều hữu ích cần biết là... Cách liệt kê, thay đổi và thực thi từng mục trong số đó. mà không trở nên quá phức tạp.
Để xem bạn đã cài đặt những bản phân phối nào và mỗi bản phân phối đang chạy trên phiên bản WSL nào, hãy sử dụng lệnh sau:
wsl.exe –list –verbose
Ở đó bạn sẽ thấy tên, trạng thái (đang chạy hoặc đã dừng) và liệu nó đang chạy trên WSL1 hay WSL2. Nếu bạn muốn thay đổi phiên bản mặc định của bất kỳ bản phân phối nào đã cài đặt, lệnh là:
wsl.exe –set-version DistroName 1 o wsl.exe –set-version DistroName 2
Nếu điều bạn quan tâm là Tất cả các bản phân phối mới đều được cài đặt trực tiếp trên WSL2., giữ:
wsl.exe –set-default-version 2
Bạn cũng có thể quyết định bản phân phối nào sẽ là mặc định khi bạn chỉ cần chạy lệnh. wsl Từ PowerShell. Để thực hiện việc này:
wsl.exe –set-default DistroName
Và nếu bạn chỉ muốn chạy một lệnh cụ thể mà không cần hoàn toàn vào giao diện dòng lệnh tương tác, thì thao tác rất đơn giản:
wsl
Ví dụ: wsl ls sẽ liệt kê nội dung của thư mục hiện tại trong môi trường Linux, trong khi mật khẩu wsl Nó sẽ hiển thị cho bạn đường dẫn như được nhìn nhận từ hệ thống tập tin của bản phân phối.
Sử dụng Ubuntu và các bản phân phối khác từ cửa sổ Terminal của Windows.
Với Windows 11 (và cả Windows 10 nếu bạn cài đặt từ Microsoft Store), bạn có Windows Terminal, một ứng dụng dòng lệnh hiện đại. Nó hợp nhất CMD, PowerShell và WSL thành một giao diện duy nhất với các tab, bảng điều khiển và khả năng tùy chỉnh nâng cao.
Windows Terminal tự động phát hiện các bản phân phối Linux WSL đã được cài đặt, vì vậy Bạn có thể mở các tab mới trực tiếp trên Ubuntu, Debian, Kali, v.v. mà không cần phải khởi chạy từng bản phân phối từ biểu tượng riêng lẻ của nó.
Trong số những ưu điểm của nhà ga là... Nhiều tab, bảng chia đôi, hỗ trợ đầy đủ Unicode và UTF-8., khả năng tăng tốc đồ họa cho việc hiển thị văn bản và khả năng tùy chỉnh bảng màu, phông chữ, hình nền và thậm chí cả các phím tắt theo ý thích của bạn.
Để làm việc thoải mái, điều thường gặp là... Cấu hình hồ sơ cho từng bản phân phối WSL. và chuyển đổi giữa chúng và PowerShell tùy thuộc vào việc bạn đang làm: ví dụ, biên dịch mã trong Ubuntu, chạy tập lệnh trong Debian hoặc quản lý dịch vụ trong Kali, tất cả đều từ cùng một cửa sổ.
Nếu tại bất kỳ thời điểm nào bạn mở một phiên WSL trong PowerShell và muốn quay lại giao diện dòng lệnh Windows, chỉ cần gõ lệnh sau: ra Để thoát khỏi phiên Linux đó và quay lại trình thông dịch ban đầu.
Ưu điểm của WSL2 so với máy ảo và khởi động kép
Ngoài sự tò mò về mặt kỹ thuật, WSL2 còn có những ưu điểm sau: Có những ưu điểm rất thiết thực so với việc thiết lập máy ảo bằng VirtualBox/VMware hoặc hệ thống khởi động kép.đặc biệt nếu trọng tâm chính của bạn là phát triển hoặc quản trị hệ thống.
Về mặt nguồn lực, WSL2 nhẹ hơn nhiều so với máy ảo truyền thống.Bộ nhớ và CPU được quản lý động và chỉ được dành riêng khi bản phân phối đang chạy. Bạn không cần phải phân bổ trước 4, 8, hoặc nhiều hơn GB RAM như khi sử dụng máy ảo, điều này rất hữu ích nếu máy tính của bạn thiếu bộ nhớ.
Về tốc độ, Khởi động một bản phân phối Linux trong WSL2 gần như tức thì.Điều này khác xa so với vài giây (hoặc thậm chí vài phút) cần thiết để tải một hệ thống Linux hoàn chỉnh trong VirtualBox. Đối với các tác vụ hàng ngày như biên dịch, chạy dịch vụ, sử dụng Docker hoặc xử lý các công cụ dòng lệnh, trải nghiệm cực kỳ nhanh chóng.
Bên cạnh đó, Khả năng tích hợp với hệ thống tệp tin Windows vượt trội hơn hẳn. Tương tự như máy ảo. Bạn có thể truy cập các thư mục Windows của mình từ Linux bằng các đường dẫn như /mnt/c, và cũng có thể điều hướng đến nội dung của bản phân phối từ File Explorer, mà không cần các thư mục chia sẻ cồng kềnh hoặc bất cứ thứ gì tương tự.
So với hệ thống khởi động kép, điểm khác biệt lớn là ở chỗ: Bạn không cần phải khởi động lại máy tính để chuyển từ Windows sang Linux.Bạn có thể sử dụng cả hai cùng lúc và di chuyển dữ liệu giữa hai môi trường một cách liền mạch. Linux có thể đọc dữ liệu mà không gặp vấn đề gì. Phân vùng NTFSWindows có thể truy cập hệ thống tệp ext4 thông qua WSL, từ đó lấp đầy khoảng trống mà trước đây cần đến các công cụ của bên thứ ba.
Tuy nhiên, nếu điều bạn đang tìm kiếm là Khai thác tối đa tiềm năng của Linux với môi trường đồ họa hoàn chỉnh.Mặc dù mang lại tính linh hoạt tối đa cho trình điều khiển và sử dụng nhiều tài nguyên mạng và phần cứng, hệ thống khởi động gốc hoặc khởi động kép vẫn là lựa chọn mạnh mẽ nhất. WSL2 không nhằm mục đích thay thế tất cả các trường hợp có thể xảy ra, mà chỉ nhằm mục đích đơn giản hóa đáng kể những trường hợp không cần đến một môi trường máy tính để bàn Linux đầy đủ.
Những hạn chế và nhược điểm của WSL và WSL2
Mặc dù WSL2 đã được cải thiện rất nhiều so với WSL1, không phải mọi thứ đều hoàn hảo Và có một số hạn chế mà bạn cần lưu ý để tránh những bất ngờ khi thay đổi quy trình làm việc của mình.
Để bắt đầu, WSL1 không có hỗ trợ nhân hệ điều hành thực sự.Do đó, các công cụ như Docker hoặc các dịch vụ dựa trên các tính năng nâng cao của nhân hệ điều hành có thể không hoạt động chính xác hoặc có thể yêu cầu các giải pháp thay thế và các lớp bổ sung. Vấn đề này đã được giải quyết trong WSL2, nhưng luôn nên kiểm tra phiên bản bạn đang sử dụng.
Trong WSL2, mặc dù có một nhân Linux thực sự, Mạng lưới và một số thiết bị ngoại vi tiếp tục trải qua các lớp bảo mật bổ sung.Điều này có thể gây ra một số hao phí trong các tác vụ mạng rất cụ thể hoặc khi xử lý một số thiết bị USB và nối tiếp nhất định. Đối với hầu hết người dùng, đây không phải là vấn đề, nhưng đối với một số môi trường sản xuất hoặc phần cứng rất đặc thù, nó có thể trở thành điểm nghẽn.
Một vấn đề quan trọng khác là Các bản phân phối WSL không được thiết kế như máy chủ cổ điểnNhiều hệ thống không khởi động systemd theo mặc định, điều này làm phức tạp việc chạy các dịch vụ như các tiến trình nền (daemon) thường trực theo kiểu máy chủ Linux truyền thống. Mặc dù có những cách để khắc phục hạn chế này hoặc sử dụng các tập lệnh tùy chỉnh, nhưng đó không phải là cách tiếp cận lý tưởng cho các khối lượng công việc sản xuất lớn.
Ngoài ra còn có một hạn chế về mặt khái niệm: vì nó chạy trong hệ điều hành Windows, Rất dễ rơi vào cám dỗ cho rằng việc học hoặc cài đặt một hệ điều hành Linux đầy đủ cho máy tính để bàn là không đáng.WSL cung cấp một môi trường terminal mạnh mẽ, nhưng nó không thể thay thế hoàn toàn trải nghiệm máy tính để bàn Linux với trình quản lý cửa sổ, trình điều khiển gốc và hệ sinh thái các ứng dụng trực quan.
Tóm lại WSL rất tuyệt vời cho việc phát triển, kiểm thử, viết kịch bản, tự động hóa và quản trị.Tuy nhiên, nó không được thiết kế để thay thế một máy chủ Linux thực thụ hoặc một nền tảng sản xuất hiệu năng cao, mặc dù trong nhiều trường hợp, hiệu năng của nó khá gần với điều đó.
So sánh WSL với Docker và các hệ thống ảo hóa khác
Rất dễ nhầm lẫn các khái niệm, vì vậy điều quan trọng là phải phân biệt chúng một cách rõ ràng. WSL, máy ảo cổ điển và các container như DockerBởi vì mỗi công nghệ giải quyết một vấn đề khác nhau.
Máy ảo (VirtualBox, VMware, Hyper-V classic) Nó vận hành một hệ điều hành hoàn chỉnh, độc lập. Từ máy chủ. Bạn phân bổ tài nguyên cố định và chạy một hệ thống Linux với môi trường desktop, các dịch vụ và mọi thứ khác bạn muốn, nhưng chi phí về RAM và CPU cao hơn và khả năng tích hợp với Windows tương đối hạn chế.
Mặt khác, WSL2 Nó dựa trên một máy ảo (VM) nhẹ và được kiểm soát chặt chẽ. Chỉ chạy những gì Linux cần, tích hợp hoàn toàn với Windows: hệ thống tập tin dùng chung, khởi động gần như tức thì, sử dụng tài nguyên linh hoạt và khả năng chạy các lệnh Linux trực tiếp từ PowerShell.
Docker áp dụng một cách tiếp cận khác: Container không phải là hệ điều hành hoàn chỉnh.Thay vào đó, chúng là những môi trường tối giản, nơi một ứng dụng hoặc dịch vụ cụ thể chạy độc lập với phần còn lại. Mỗi container được xây dựng dựa trên một ảnh chỉ chứa những thành phần thiết yếu để chạy chương trình của nó, khiến chúng rất nhẹ và dễ triển khai trên quy mô lớn.
Ưu điểm vượt trội của WSL2 ở đây là: Nó cho phép bạn sử dụng Docker một cách nguyên bản trên nhân Linux thực sự trong Windows.Điều này giúp tránh được nhiều giải pháp tạm thời cần thiết trước đây. Đối với việc phát triển, sự kết hợp giữa Windows + WSL2 + Docker cung cấp một môi trường rất mạnh mẽ để mô phỏng môi trường sản xuất mà không cần rời khỏi máy tính để bàn Windows của bạn.
Cuối cùng, WSL2 và Docker bổ sung cho nhau. Thay vì cạnh tranh: cái đầu tiên cung cấp cho bạn một hệ điều hành Linux hoàn chỉnh trong một cửa sổ dòng lệnh tích hợp vào Windows, còn cái thứ hai cho phép bạn đóng gói các dịch vụ cụ thể trong hệ điều hành Linux đó (hoặc các môi trường khác) một cách riêng biệt và có thể tái tạo được.
Môi trường đồ họa, Win-KeX và những cải tiến trong tương lai của WSL.
Trong một thời gian khá dài, WSL chỉ giới hạn ở việc sử dụng thiết bị đầu cuối.Và nếu bạn muốn có môi trường đồ họa, bạn phải thiết lập các giải pháp của bên thứ ba với máy chủ X hoặc các công cụ chuyên dụng. Một ví dụ đáng chú ý là Win-KeX (Trải nghiệm Kali trên Windows)Đây là giải pháp từ những người tạo ra Kali Linux, cung cấp một môi trường máy tính để bàn Kali hoàn chỉnh thông qua phiên VNC tích hợp với Windows.
Win-KeX cho phép Chạy các ứng dụng đồ họa Kali trong Windows Nó giống như một máy ảo, nhưng được tích hợp liền mạch hơn. Thậm chí nó còn cung cấp các chế độ cho phép cửa sổ Linux hòa trộn với cửa sổ Windows, tạo cảm giác mọi thứ đều nằm trên cùng một màn hình nền.
Đồng thời, Microsoft cũng đang hướng tới... Hỗ trợ đồ họa chính thức trong WSL2Với ý tưởng cho phép các ứng dụng GUI của Linux chạy dễ dàng hơn. Các phiên bản Windows 11 hiện đại đã bao gồm Hỗ trợ chính thức cho nhiều ứng dụng đồ họaVà công ty vẫn tiếp tục nỗ lực phát triển các giao diện thân thiện hơn với người dùng để quản lý và cài đặt các bản phân phối mà không cần phụ thuộc quá nhiều vào giao diện dòng lệnh.
Đối với những người thích tránh sử dụng lệnh, Các giao diện đồ họa chuyên dụng cho WSL đang được nghiên cứu. Điều này giúp việc cài đặt, cập nhật và quản lý các bản phân phối trở nên dễ dàng hơn. Mặc dù nhiều người dùng nâng cao vẫn sẽ thích sử dụng giao diện dòng lệnh, nhưng một lớp giao diện trực quan bổ sung có thể khuyến khích nhiều người sử dụng Linux từ bên trong Windows.
Mặc dù lộ trình cụ thể vẫn liên tục thay đổi, Xu hướng rất rõ ràng: tích hợp nhiều hơn, hiệu năng cao hơn và dễ sử dụng hơn.Tất cả những điều này mà không làm mất đi khả năng tiếp tục điều khiển WSL từng bước từ dòng lệnh dành cho những người cần.
Các vấn đề thường gặp khi sử dụng WSL và cách giải quyết chúng.
Trong thực tế, việc gặp phải điều này khá phổ biến. Lỗi và thông báo khó hiểu khi kích hoạt WSL hoặc cài đặt bản phân phối Linux.Nhiều vấn đề trong số này liên quan đến quyền truy cập, các phiên bản Windows cũ hơn hoặc cài đặt ảo hóa.
Một trong những lỗi thường gặp nhất xuất hiện khi bật Hệ thống con Windows dành cho Linux Từ các tính năng của Windows. Nếu hệ thống báo lỗi khi kích hoạt, trước tiên hãy kiểm tra xem Windows đã được cập nhật đầy đủ chưa và bạn đang thực hiện thao tác bằng tài khoản có quyền quản trị viên.
Một vấn đề thường xuyên tái diễn khác là Lỗi khi cài đặt bản phân phối từ StoreNhững lỗi này thường do các tệp tải xuống bị hỏng hoặc cấu hình Windows bị lỗi gây ra. Hãy kiểm tra xem bạn có kết nối internet ổn định không, đĩa cài đặt được cài đặt trên cùng ổ đĩa với Windows (thường là C:) và không có bất kỳ hạn chế nào trong Microsoft Store.
Các mã lỗi thuộc loại [loại bị thiếu] cũng thường gặp. 0x80070003 hoặc 0x80370102 trong quá trình cài đặt bản phân phối. Trong nhiều trường hợp, chúng cho biết rằng Chức năng ảo hóa không được bật trong BIOS/UEFI. Hoặc có thể Nền tảng Máy ảo Windows chưa được kích hoạt đúng cách. Vào cài đặt BIOS, bật tùy chọn VT-x/AMD-V và kiểm tra trong các tính năng của Windows xem "VirtualMachinePlatform" đã được chọn chưa.
Nếu bạn thấy một thông báo như thế này "WSL không cài đặt bản phân phối nào" Ngay cả sau khi tải xuống, hãy đảm bảo bạn đã khởi động bản phân phối ít nhất một lần từ menu Bắt đầu trước khi cố gắng gọi nó từ dòng lệnh. Windows sẽ không nhận diện nó đúng cách cho WSL cho đến khi quá trình khởi động đầu tiên hoàn tất.
Cuối cùng, khi cố gắng chuyển sang WSL2, bạn có thể thấy thông báo tương tự như sau: «WSL 2 yêu cầu cập nhật thành phần nhân hệ điều hành»Thông báo này có nghĩa là bạn thiếu gói cập nhật nhân Linux cho WSL2. Chỉ cần tải xuống trình cài đặt chính thức từ trang web của Microsoft, chạy nó và khởi động lại; từ đó, bạn sẽ có thể thực hiện lệnh chuyển đổi phiên bản mà không gặp bất kỳ sự cố nào.
Quay lại sử dụng Windows với WSL2 thay vì hệ điều hành Linux gốc?
Nhiều người dùng đã dành thời gian sử dụng Linux thuần túy tự hỏi Liệu việc quay lại sử dụng Windows và WSL2 làm môi trường làm việc chính có hợp lý không? hoặc thậm chí chuyển từ Windows sang LinuxCâu trả lời phụ thuộc rất nhiều vào loại công việc bạn thực hiện và sở thích cá nhân của bạn.
Trong các bài kiểm tra tổng hợp như Geekbench 6, người ta đã quan sát thấy rằng Ubuntu trên WSL2 có thể hoạt động tương đương với Ubuntu gốc. và thậm chí còn vượt trội hơn cả Windows trong một số trường hợp xử lý đơn luồng. Đối với công việc phát triển phần mềm, khoa học dữ liệu, container, Spark, SQL trên Linux và các tác vụ tương tự, WSL2 thường cung cấp hiệu năng dư dả, cùng với lợi thế là vẫn có sẵn toàn bộ hệ sinh thái Windows (Office, trò chơi, trình điều khiển chuyên dụng, công cụ đồ họa).
Nếu nhu cầu của bạn tập trung vào bảng điều khiển, công cụ phát triển, Docker và dịch vụ phụ trợWSL2 là một lựa chọn rất ổn định. Bạn có thể gắn ổ đĩa từ Windows, làm việc với các hệ thống tệp như ext4 hoặc thậm chí ZFS/XFS trong một số trường hợp nhất định, và tiếp tục tích hợp mọi thứ với Hyper-V, Docker Desktop và các công cụ khác.
Mặt khác, nếu quy trình làm việc của bạn phụ thuộc nhiều vào... Môi trường máy tính để bàn Linux, khả năng tùy chỉnh cực cao môi trường đồ họa, việc sử dụng các trình điều khiển phần cứng chuyên dụng. Nếu bạn cần kiểm soát rất chi tiết quá trình khởi động và các dịch vụ hệ thống, thì việc cài đặt Linux trực tiếp hoặc cài đặt song song (dual-boot) vẫn sẽ phù hợp hơn.
Trên thực tế, ngày càng nhiều nhà phát triển lựa chọn phương án này. Sử dụng Windows 11 làm hệ điều hành cơ bản và WSL2 làm môi trường làm việc Linux chính.Điều này duy trì tính linh hoạt tối đa. Miễn là bạn nhận thức được những hạn chế (đặc biệt là liên quan đến các dịch vụ sản xuất và dịch vụ liên tục), sự kết hợp Windows + WSL2 + Ubuntu là một sự kết hợp rất mạnh mẽ cho việc sử dụng hàng ngày.
Với tất cả những gì chúng ta đã thấy, rõ ràng là WSL2 đã hoàn toàn thay đổi cách thức kết hợp giữa Windows và Linux.Bạn có thể chuyển đổi giữa hai hệ điều hành mà không cần khởi động lại, tận dụng tối đa các công cụ của mỗi hệ điều hành và thiết lập một môi trường phát triển mạnh mẽ mà không bị sa lầy vào các phân vùng hay máy ảo nặng nề, điều này đặc biệt hữu ích cho cả những người chuyển từ Linux sang và những người mới bắt đầu khám phá phần mềm mã nguồn mở từ sự thoải mái của Windows.
Người viết đam mê về thế giới byte và công nghệ nói chung. Tôi thích chia sẻ kiến thức của mình thông qua viết lách và đó là những gì tôi sẽ làm trong blog này, cho bạn thấy tất cả những điều thú vị nhất về tiện ích, phần mềm, phần cứng, xu hướng công nghệ, v.v. Mục tiêu của tôi là giúp bạn điều hướng thế giới kỹ thuật số một cách đơn giản và thú vị.


