Windows Subsystem for Linux, thường được gọi là WSL, là một tính năng cho phép người dùng chạy các bản phân phối Linux được hỗ trợ trong Windows. Không giống như khởi động kép, WSL chạy bên trong Windows giống như một ứng dụng Windows thông thường. Trên WSL, việc quên mật khẩu được xử lý khác với môi trường Linux bình thường, vì không có bootloader có thể chỉnh sửa. Nó cũng không có hệ thống init mà bạn có thể chiếm quyền điều khiển để khởi chạy root shell. Hướng dẫn này sẽ chỉ cho bạn các bước để reset mật khẩu người dùng WSL.
Sử dụng tài khoản root
Một cách đơn giản để khôi phục hoặc reset mật khẩu đã quên cho người dùng WSL là sử dụng tài khoản root. Trong hầu hết các bản phân phối WSL, tài khoản root được kích hoạt và không cần đặt mật khẩu.
Vì WSL tự động đăng nhập vào tài khoản mặc định đã đặt mà không có lời nhắc mật khẩu, nên bạn có thể thay đổi file cấu hình và đặt tài khoản mặc định làm tài khoản root.
Để thay đổi cấu hình, cần sử dụng file thực thi phiên bản WSL. Theo mặc định, file thực thi nằm trong C:\users\username\appdata\Local\Microsoft\WindowsApps\<distroname.exe>.
Thay thế username bằng tên tài khoản người dùng và distroname bằng bản phân phối WSL của bạn. Ví dụ, file thực thi openSUSE 15.3 Leap sẽ là C:\Users\mte\AppData\Local\Microsoft\WindowsApps\openSUSE-Leap-15.3.exe.
Để thay đổi cấu hình cho bản phân phối, hãy khởi chạy Command Prompt và nhập lệnh khớp với tên bản phân phối của bạn. Ví dụ, đối với openSUSE, hãy đặt người dùng mặc định thành root bằng lệnh:
opensuse-leap-15.3 config --default-user root
Lệnh trên sẽ thay đổi người dùng mặc định thành root cho phiên bản WSL openSUSE.
Đối với các bản phân phối khác, lệnh sẽ là:
ubuntu config --default-user root
Ubuntu 18.04
ubuntu18004 config --default-user root
Ubuntu 20.04
ubuntu2004 config --default-user root
Kali Linux
kali config --default-user root
Debian
debian config --default-user root
Arch Linux
arch config --default-user root
Bước cuối cùng là đăng nhập vào bản phân phối và thay đổi mật khẩu cho tên người dùng mục tiêu. Bạn có thể khởi chạy bản phân phối của mình bằng cách sử dụng menu Start, Command Prompt hoặc chọn nó từ Windows Terminal.
Sau khi khởi chạy, bạn nên đăng nhập với quyền root.
Cuối cùng, sử dụng lệnh passwd để thay đổi mật khẩu. Ví dụ, để thay đổi mật khẩu cho username cap, hãy đặt lệnh là:
passwd cap
Khôi phục người dùng mặc định
Sau khi bạn reset mật khẩu cho người dùng cụ thể, tốt nhất nên thay đổi người dùng mặc định thay vì sử dụng tài khoản root.
Để làm điều đó, hãy sử dụng lệnh config và thay thế username bằng tài khoản mong muốn. Ví dụ:
opensuse-leap-15.3 config --default-user cap
Hãy nhớ thay thế nó bằng tên bản phân phối của bạn.
Chúc bạn thực hiện thành công!