Windows Subsystem for Linux (WSL) là một trong những dự án phần mềm thú vị nhất gần đây. Mặc dù Windows và Linux từng coi nhau kẻ thù, giờ bạn chạy app Linux đầy đủ trên Windows không dual-boot hay máy ảo.
Nếu dùng WSL, làm sao làm nó tốt hơn?
Lấy Windows Terminal
Mặc dù có cửa sổ terminal khi cài distro Linux từ Microsoft Store, có lựa chọn tốt hơn cho terminal.
Một trong số đó là Windows Terminal của Microsoft. App này bao gồm nhiều tính năng mong đợi từ terminal emulator hiện đại, bao gồm tab. Windows Terminal không chỉ xử lý Linux mà còn PowerShell và Command Prompt cũ.
Nó vẫn hơi thô ở rìa. Bạn phải chỉnh setting trong file .json. Nếu dùng dòng lệnh nhiều, bạn có thể thoải mái chỉnh file cấu hình.
Thay Đổi Shell
Trên hầu hết distro Linux bao gồm Ubuntu, shell mặc định là Bash. Không sai gì, nhưng người dùng Linux giàu kinh nghiệm thường không hài lòng cách hệ thống ra mắt. Mọi người thích tinh chỉnh, shell không ngoại lệ.
Một bash alternative phổ biến trong thế giới Unix/Linux là zsh. Nó đã là shell mặc định trong macOS của Apple. Chuyển sang shell khác chỉ một lệnh.
Trên hầu hết distro, zsh không cài mặc định. Trên Ubuntu, cài dùng apt:
sudo apt install zsh
Để đổi shell sang zsh trong Ubuntu WSL, gõ:
chsh -s /usr/bin/zsh
Vị trí shell muốn dùng có thể khác nếu dùng distro khác. Sẽ nhắc mật khẩu đổi shell. Tìm vị trí shell, gõ:
which zsh
Nếu muốn shell khác, thay zsh bằng tên shell đó.
Liên quan: Shell Linux Nào Tốt Nhất? So Sánh 5 Shell Phổ Biến
Truy Cập File Windows Và Linux
Không chỉ WSL cho chạy chương trình Windows và Linux song song, nó cũng giúp truy cập file trên cả hai hệ thống đồng thời.
Rất tiện cho dự án phát triển. Bạn chỉnh chương trình trong editor Windows và test trong cửa sổ Linux.
Hệ thống file Windows mount phía Linux tại thư mục /mnt/[chữ cái ổ]. Nếu ổ Windows là C, nó là /mnt/c. Truy cập tất cả file Windows dùng lệnh Linux tiêu chuẩn cách này.
Truy cập filesystem Linux từ Windows cũng dễ. Nó hiển thị dưới hệ thống phân cấp \\wsl$ trong Windows Explorer. Windows thấy hệ thống Linux như ổ mạng. Nếu cài Ubuntu 20.04, nó là \\wsl$\Ubuntu-20.04.
Để mở cửa sổ Explorer thư mục hiện tại gõ:
Explorer.exe .
Nâng Cấp Lên WSL 2
Năm 2020, Microsoft giới thiệu WSL 2. Cải tiến chính so với WSL 1 là dùng nhân Linux thực tế, phân phối qua Windows Update. Điều này cải thiện hiệu năng, vì nhân thực thi system call Linux thay vì dịch sang system call Windows.
Để nâng cấp WSL 2, chỉ cần vài lệnh. Trước tiên kích hoạt hypervisor. Mở PowerShell admin và gõ:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
Khởi động lại máy.
Tiếp theo tải nhân Linux. Lấy gói từ trang Microsoft và chạy cài đặt.
Tải: Linux Kernel cho WSL
Giờ đặt phiên bản 2 làm mặc định cho distro cài tương lai:
wsl --set-default-version 2
Nhưng muốn nâng cấp cài đặt hiện tại lên WSL 2. May mắn là cũng dễ.
Xem distro đã cài, gõ:
wsl --list
Nếu muốn đặt cài Ubuntu 20.04 sang WSL 2, dùng tùy chọn --set-version:
wsl --set-version Ubuntu-20.04 2
Giờ chạy WSL 2 với tính năng nâng cao trên cài đặt hiện tại và tương lai, nhân sẽ nâng cấp qua Windows Update như driver khác.
Tập Hợp Công Cụ
Linux phổ biến giữa lập trình viên do lượng công cụ lập trình khổng lồ: editor, compiler, IDE, server software, v.v. có sẵn.
Dễ dàng trang bị cài đặt WSL với công cụ yêu thích như hệ thống khác. Chỉ dùng trình quản lý gói chuẩn đi kèm hệ thống.
Trên Debian và Ubuntu là apt. Trên SuSE là YaST. Trên Alpine là APK. Ý là bạn tìm thấy mọi thứ cần cho dự án phát triển trên WSL như cài Linux truyền thống.
Nếu lập trình C, Debian và Ubuntu có gói build-essential gồm GCC compiler, thư viện C, tiện ích Make, và công cụ phát triển gói. Thực sự dành cho người làm việc trên bản phân phối, nhưng cũng tiện cho phát triển C chung.
Để cài, dùng lệnh apt:
sudo apt install build-essential
Vale a pena duyệt danh sách gói đảm bảo công cụ yêu thích có và tìm cái mới.
Quản Lý Dịch Vụ
Mặc dù hầu hết thời gian WSL chạy lệnh thông thường, đôi khi cần khởi động/dừng dịch vụ. Có thể phát triển web app cần test dùng web server.
May mắn là dễ dàng khởi động/dừng dịch vụ như distro Linux khác.
Hơi khác trên Ubuntu dưới WSL, vì không dùng Systemd quản lý dịch vụ, mà dùng tiện ích Service, dùng script init kiểu System V cũ.
Nếu muốn khởi động Apache server, chỉ cần lệnh:
sudo service apache 2 start
Lệnh này khởi chạy Apache server. Kiểm tra dịch vụ chạy dùng top thấy apache2 trong danh sách tiến trình.
Dừng Apache server cũng dễ:
sudo service apache 2 stop
Khám Phá Distro Khác
Nhiều niềm vui WSL từ cách chạy distro khác nhau cùng lúc, tại sao không tận dụng chạy thứ ít biết như Alpine Linux cùng Ubuntu hoặc SuSE hoặc Debian? Có thể tìm distro yêu thích mới. Nếu thích distro, đặt làm main distro dùng cờ --set-default:
wsl --set-default distro-name
nơi distro-name là tên hệ thống muốn chuyển.
Liên quan: 5 Distro Linux Cài Được Trong Windows Subsystem For Linux
Khám Phá WSL
WSL có nhiều tùy chọn khám phá thế giới mới kết hợp Linux và Windows. Có vẻ luôn có điều mới phát hiện. Bạn đổi shell, đổi terminal, khởi động/dừng dịch vụ, xem distro khác.
Windows Subsystem for Linux có nhiều tính năng khác biệt so với distro Linux. Nhưng bạn vẫn tận dụng WSL vì nó cho truy cập nhanh hệ thống Linux từ máy Windows.