Vấn đề là, tôi không thể lấy lại lời nhắc ban đầu để nhập tên người dùng và mật khẩu, theo những gì tôi hiểu, đó là cách một người dùng mới được tạo đúng cách cho phiên bản Ubuntu WSL ảo.
Đúng. Việc tạo người dùng ban đầu được thực hiện khi thực thi phân phối (các .exe
được cài đặt từ Microsoft Store) được chạy lần đầu tiên. Trong trường hợp của Ubuntu, đó thường là ubuntu.exe
, mặc dù nó có thể khác nhau tùy thuộc vào việc bạn có cài đặt "phiên bản được đặt tên" trong Cửa hàng hay không (ví dụ: cụ thể là Ubuntu 20.04). Điều đó nói rằng, hoàn toàn có thể tạo người dùng mặc định theo cách thủ công (xem bên dưới).
Hãy bắt đầu với wsl -l -v
để xem tên phân phối là gì. Nó rất có thể sẽ chỉ là "Ubuntu", nhưng hãy sửa đổi các lệnh bên dưới nếu nó khác.
Nút "dễ dàng"
Có thể quay lại trạng thái "cấu hình" ban đầu, với giả định lớn và báo trước rằng làm như vậy sẽ xóa tất cả dữ liệu/cấu hình trong phiên bản (hệ thống tập tin ảo, v.v.). Lệnh đó là wsl --unregister Ubuntu
.
Sau khi làm điều đó, bạn chỉ cần có thể chạy lại "Ubuntu" từ Menu Bắt đầu và bản phân phối sẽ được tạo lại. Sau đó, nó sẽ hỏi bạn tên người dùng/mật khẩu mặc định.
Chạy bằng root, không cần sudo
Một thủ thuật hay mà bạn có thể sẽ thấy hữu ích là WSL có thể được bắt đầu với bất kỳ người dùng khả dụng nào, kể cả nguồn gốc
, không cần mật khẩu:
wsl ~ -u gốc
wsl ~ -u fred
Mặc dù ban đầu bạn có thể lo lắng về khả năng chạy root mà không cần mật khẩu, nhưng hãy nhớ rằng, ngay cả khi là root, quyền của bạn trong WSL không bao giờ có thể vượt quá quyền người dùng Windows của bạn. Điều đó nói rằng, xin vui lòng chẳng bao giờ làm cái này.
Thanh bên: Câu hỏi của bạn
Đầu tiên, để trả lời một số câu hỏi của bạn:
Tài khoản có nên là tài khoản hệ thống và có nên sử dụng tên tùy ý do Ubuntu chỉ định không?
Tôi không chắc chính xác ý của bạn ở đây là gì, nhưng tôi tin rằng câu trả lời là "không". Người dùng mặc định có thể được đặt tên bất cứ điều gì bạn thích. Tôi khuyên bạn chỉ nên sử dụng tên người dùng thông thường ưa thích của mình để thuận tiện.
Tài khoản có nên có một thư mục chính?
Có, và thư mục chính đó phải ở trong /Trang Chủ
, không phải trên ổ đĩa gắn Windows (ví dụ: /mnt/c
).
Quản trị viên nhóm sudo:sudo có phải là nhóm duy nhất mà tài khoản quản trị viên cấp bảo mật cao nhất (còn gọi là tài khoản Sudo) cần được thêm vào không, tôi có nên tạo một nhóm khác có cùng tên với tài khoản Quản trị viên mà tôi đang tạo không?
Phương pháp Ubuntu mặc định (cả "Linux thuần túy" và "WSL") là tạo một nhóm có cùng tên với tên người dùng. Trong khi có lẽ không cần thiết, tôi sẽ coi đó là "phương pháp hay nhất".
Tạo người dùng WSL "mặc định" mới mà không cần cài đặt lại
Theo như tôi có thể nói, những điều sau đây sẽ tạo người dùng mặc định có cùng cài đặt mà trình cài đặt/cấu hình chứng khoán thực hiện. Từ bên trong Ubuntu:
userradd --create-home --user-group --groups adm,dialout,cdrom,soft,sudo,audio,dip,video,plugdev,netdev --password tên người dùng "encryptedPassword"
Tất nhiên, sửa đổi tên tài khoản
để được bất cứ điều gì bạn muốn. Vì bạn đang chạy với quyền root nên không cần sudo
hoặc bất kỳ mánh khóe nào ở đó, tất nhiên, nhưng những người đọc khác không có trường hợp sử dụng của OP có thể cần sudo
hoặc wsl -u gốc
(như tài liệu trong câu trả lời này).
Tất nhiên, hầu hết các nhóm này có thể không thực sự cần thiết theo WSL, nhưng ai biết được - Một số ứng dụng có thể mong đợi một số trong số chúng và an toàn hơn là xin lỗi. Một lần nữa, đây là danh sách nhóm "chứng khoán" được cung cấp cho người dùng khi được tạo bởi bộ cấu hình Ubuntu/WSL.
Nhìn thấy đây để biết cách tạo mật khẩu được mã hóa. Cụ thể (mặc dù cá nhân chưa được kiểm tra dòng lệnh chính xác này):
useradd --create-home --user-group --groups adm,dialout,cdrom,soft,sudo,audio,dip,video,plugdev,netdev --password $(read -sp Password: pw ; echo $pw | openssl passwd -1 -stdin) tên người dùng
Đặt người dùng WSL mặc định
"Thông thường", trình cài đặt bản phân phối WSL (ví dụ: ubuntu.exe
) sửa đổi Sổ đăng ký Windows bằng tên người dùng mặc định cho bản phân phối. Tuy nhiên, tôi đề xuất một phương pháp mới hơn. Với quyền root, hãy tạo một tệp /etc/wsl.conf
với các nội dung sau:
[người dùng]
mặc định=tên người dùng
Tất nhiên, một lần nữa, thay thế của bạn tên tài khoản
.
Đối với các kỹ thuật thay thế, xem câu hỏi này và các câu trả lời khác nhau của nó.
Các bước tiếp theo được đề xuất
Cá nhân tôi khuyên bạn nên sao lưu bản sao "sẵn sàng chạy" này của bản phân phối của bạn ở giai đoạn này. Một lần nữa, từ PowerShell:
wsl --export Ubuntu "2021-08-26 Ubuntu 20.04.tar mặc định"
Nếu bạn cần tạo một phiên bản WSL dùng một lần để thử nghiệm thứ gì đó mà không sửa đổi "trình điều khiển hàng ngày" của mình, bạn có thể dễ dàng wsl --nhập khẩu
bản phân phối này (gọi nó là một cái gì đó không chỉ là "Ubuntu"), sau đó vứt bỏ nó với wsl --unregister
.