Tôi đang ở trong một tình huống kỳ lạ, rằng tôi không thể thiết lập lại mật khẩu của người dùng trên máy của mình (Ubuntu 16.04) bằng cách sử dụng sáng hơn sudo passwd username
hoặc passwd username
từ tài khoản root.
root@adam-minipc:~ # passwd mikolaj
Current password:
New password:
New password (again):
passwd: Authentication token manipulation error
passwd: password unchanged
Trong /etc/shadow
mục liên quan có nội dung:
mikolaj:!:18063:0:99999:7:::
Tại sao vậy? Điều gì gây ra nó và làm thế nào để thiết lập lại mật khẩu? Tôi đã được pwned?
Mở khóa tài khoản cũng không giúp được gì:
root@adam-minipc:~ # passwd -u mikolaj
passwd: unlocking the password would result in a passwordless account.
You should set a password with usermod -p to unlock the password of this account.
usermod -p <encrypted password> mikolaj
yêu cầu mật khẩu được mã hóa, và nó chỉ đơn giản dán nó vào /etc/shadow
tập tin. Tôi không biết cách lấy mật khẩu được mã hóa, ngay cả khi tôi biết, đó phải là cách đơn giản để đặt lại mật khẩu nếu bạn đã root. Đây là lần đầu tiên tôi thấy hành vi này passwd
và thật lòng mà nói tôi thực sự lạc lõng.
Câu hỏi khác với lỗi "Thao tác mã thông báo xác thực" khi cố gắng thay đổi mật khẩu người dùng của tôi , vì nó không liên quan gì đến hệ thống tệp chỉ đọc, tôi cũng không phàn nàn về lỗi ở nơi đầu tiên. Tôi muốn biết, tại sao sudo passwd <username>
đột nhiên bắt đầu yêu cầu mật khẩu hiện tại. Trên tất cả các hệ thống khác của tôi, nó không.
passwd
yêu cầu root cung cấp mật khẩu hiện tại. Tôi nghĩ rằng câu trả lời của jouell có thể đã sửa lỗi này. Tôi khuyên bạn nên chỉnh sửa lại để làm ngay lập tức rõ ràng những gì bạn đang hiện yêu cầu. (Có vẻ như bạn vẫn muốn đặt lại mật khẩu.) Liệu passwd mikolaj
, với quyền root, vẫn hỏi mikolaj
mật khẩu? Nếu không, có thể khó tìm thấy lý do tại sao nó đã làm. Nếu vậy, có pam-auth-update
sửa nó không? Nếu không, đầu ra của ls -l /etc/{passwd,group} /etc/pam.d/*pass*
cái gì?
sudo -u username passwd
chưa