Tôi không thể thay đổi mật khẩu của người dùng trên Ubuntu


8

Tôi muốn thay đổi mật khẩu 120 người dùng. vì vậy tôi đã viếtsudo echo 'user:passwd' | chpasswd

nhưng tôi đã có một tin nhắn,

chpasswd: (user) pam_chauthtok() failed, error:
Authentication token manipulation error
chpaswd (line 1, user) password not changed

và tôi cũng đã thử một cách khác bằng cách sử dụng textfile, nhưng tôi có cùng một thông điệp.

Tôi không thể giải quyết vấn đề này.

Câu trả lời:


18

Cách thông thường để thay đổi mật khẩu là sử dụng lệnh passwd (1) .

Nếu bạn muốn sử dụng chpasswd (8) hoặc usermod (8), bạn nên cẩn thận RTFM.

Hãy chắc chắn rằng mật khẩu đã cho tương thích với cấu hình hệ thống. Và sudonên áp dụng cho chpasswdlệnh, vì vậy bạn có thể muốn

echo 'user:passwd' | sudo chpasswd

Trong trường hợp của bạn, sudo echo 'user:passwd' | chpasswdthì sudochỉ được áp dụng để echo, đó là không chính xác.


1
thậm chí sẽ có ý nghĩa hơn để chạy toàn bộ mọi thứ như root thay vì phát hành sudotất cả thời gian.
Fiximan

@Fiximan: điều này thực sự phụ thuộc vào cấu hình hệ thống. Trên một số hệ thống sử dụng sudo sẽ rất hợp lý.
Basile Starynkevitch

Tắt: Sử dụng sudo bash một lần có thể hợp lý hơn.
Lorinczy Zsigmond

3

IMHO, tốt hơn là không giữ thông tin đăng nhập trong lịch sử bash cho các mối quan tâm bảo mật.

Chúng ta có thể sử dụng chpasswdlệnh bằng cách sử dụng một tệp thay vì truyền từ dòng lệnh. Chọn trình soạn thảo văn bản yêu thích của bạn để chỉnh sửa tập tin.

vim passwd

Sau đó nhập user:password, lưu và thoát với:wq

cat passwd | sudo chpasswd

Sau đó, bạn nên xóa các tập tin:

rm passwd

Theo cách này, bạn sẽ không cần sử dụng thiết bị đầu cuối để vượt qua thông tin đăng nhập của mình.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.