Tôi nên chạy lệnh nào sau khi thực hiện thay đổi tệp / etc / passwd


12

Tôi đã thực hiện một số thay đổi đối với tập tin / etc / passwd, bây giờ tôi muốn xem liệu hiệu ứng của các thay đổi có diễn ra hay không. Tôi nên chạy lệnh nào cho điều đó.

Ví dụ: sau khi thực hiện thay đổi tệp / etc / ssh / ssh_config, tôi chạy lệnh /etc/init.d/sshd.

Câu trả lời:


19

Để xác minh passwdshadowtập tin tương ứng , sử dụng pwck. Để xác minh groupvà tương ứng gshadowbốc lửa, sử dụng grpck'. Xem các trang để biết chi tiết về các hành động họ thực hiện.

Chỉnh sửa bằng tay /etc/passwdđược thực hiện tốt nhất (nếu có) với vipwvipw -scho shadowtệp. Đối với /etc/group/etc/gshadowsử dụng vigrvigr -s, tương ứng. Sử dụng các công cụ này không chỉ cung cấp một khóa để ngăn chặn muultipl, cập nhật người dùng đồng thời mà còn cung cấp kiểm tra tính hợp lệ.

Nói chung, sửa đổi mật khẩu và các tệp nhóm được thực hiện tốt nhất bằng cách sử dụng tiêu chuẩn user(add|mod|del)group(add|mod|del)công cụ.


7

Không có lệnh nào để áp dụng các thay đổi từ tệp / etc / passwd.

Nếu người dùng mà chi tiết bạn đã thay đổi được đăng nhập, thì chỉ cần đăng nhập lại để áp dụng các thay đổi. Nếu không, chúng sẽ có sẵn ngay sau khi đăng nhập.

Điều này là do đăng nhập đọc chi tiết từ tệp passwd trong khi đăng nhập và giữ nó trong bộ nhớ cho đến khi đăng xuất.


2
"Không có lệnh như vậy" trên Linux . Nhiều * ixes khác có các lệnh như vậy. Các passedtập tin được một trong hai biên soạn xuống một dạng nhị phân đó là nhanh hơn để xử lý, hoặc được giữ chỉ để tương thích và các dữ liệu phải được dịch sang hình thức mật khẩu DB mẹ đẻ của hệ điều hành.
Warren Young

2

Tôi đã thành công với update-passwdlệnh sau khi tôi chỉnh sửa thủ công tệp / etc / passwd trên các hệ thống dựa trên Debian (ví dụ: Ubuntu). Tôi biết đây KHÔNG phải là mục đích sử dụng của lệnh này, nhưng nó cũng hoạt động cho mục đích này. Xem trang người dùng của nó để biết thêm các bản sao: http://manpages.ubfox.com/manpages/precise/man8/update-passwd.8.html

Trên các hệ thống dựa trên Red Hat / CentOS tôi không tìm thấy lệnh tương đương, trên các hệ thống đó tôi phải thực hiện khởi động lại hệ thống để thực hiện các thay đổi có hiệu lực.

Như ai đó đã đề cập, tốt nhất không nên chỉnh sửa tệp / etc / passwd bằng tay. Thay vào đó tôi sử dụng các lệnh useradd / userdel / usermod bất cứ khi nào có thể. Lý do hợp lệ duy nhất để chỉnh sửa các tập tin / etc / passwd và / etc / nhóm IMO là khi tôi cần sao chép nhiều tài khoản từ một hệ thống khác. Sau khi thêm ví dụ 100 tài khoản theo cách này, tôi thường thực hiện khởi động lại toàn bộ hệ thống. Ngoài ra, khi bạn chỉnh sửa thủ công các tệp / etc / passwd và / hoặc / etc / Groups, bạn cũng không được quên chỉnh sửa các tệp bóng thích hợp.


1

Tôi không nghĩ rằng có một lệnh như vậy là không cần thiết ở nơi đầu tiên Ngoài ra, không nên chỉnh sửa trực tiếp tệp đó, thay vào đó hãy sử dụng các lệnh thích hợp như useradd và passwd

Nếu bạn không bị thuyết phục thì chỉ cần khởi động lại sau khi chỉnh sửa tệp đó và tất cả các thay đổi sẽ có hiệu lực


0

Bạn không nên sửa đổi /etc/passwdbằng tay; sử dụng usermodthay thế

Ví dụ:

Nếu bạn muốn thay đổi thư mục nhà của người dùng, hãy sử dụng lệnh này:

usermod --home /path/to/home/dir username

1
Đôi khi cần phải chỉnh sửa tệp bằng tay, nhưng sau đó vipwnên được sử dụng.
Kusalananda

Hiểu rồi @Kusalananda
Sun Kuo
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.