Яку команду слід запустити після внесення змін у файл / etc / passwd


12

Я вніс деякі зміни в / etc / passwd файл, тепер я хотів дізнатися, чи відбулися зміни чи ні. Яку команду я повинен виконати для цього.

Наприклад, після внесення змін у файл / etc / ssh / ssh_config, я запускаю команду /etc/init.d/sshd.

Відповіді:


19

Для перевірки passwdвідповідного shadowфайлу використовуйте pwck. Щоб перевірити файл groupта відповідні gshadowфайли, використовуйте grpck'. Детальні відомості про дії, які вони виконують, дивіться в керівництві.

Ручне редагування /etc/passwdнайкраще проводити (якщо воно взагалі є) за допомогою vipwта vipw -sдля shadowфайлу. Для /etc/groupі /etc/gshadowвикористання, vigrі vigr -sвідповідно. Використання цих інструментів забезпечує не тільки блокування для запобігання багаторазових, одночасних оновлень користувачів, але й пропонує перевірку дійсності.

Загалом, модифікації паролів та групових файлів найкраще вносити за допомогою стандарту user(add|mod|del)та group(add|mod|del)інструментів.


7

Немає такої команди для застосування змін у файлі / etc / passwd.

Якщо користувач, які деталі, які ви змінили, увійшов до системи, він повинен просто змінитись, щоб застосувати зміни. Якщо ні, вони будуть одразу доступні після входу.

Це пов’язано з тим, що логін під час входу читає дані з файлу passwd і зберігає його в пам'яті до виходу.


2
"... немає такої команди ..." в Linux . Багато інших * ixes мають такі команди. passedФайл або скомпільовані вниз до двійковій формі , що швидше в процесі, або зберігається тільки для сумісності і дані повинні бути переведені в нативному вигляді пароля БД в ОС.
Warren Young

2

Я мав успіх із update-passwdкомандою після того, як вручну редагував файл / etc / passwd в системах на базі Debian (наприклад, Ubuntu). Я знаю, що це НЕ призначене використання цієї команди, але воно працює і для цієї мети. Перегляньте його довідкову сторінку для отримання додаткових розсилок: http://manpages.ubuntu.com/manpages/precise/man8/update-passwd.8.html

У системах на базі Red Hat / CentOS я не знайшов еквівалентної команди, для цих систем я повинен був перезавантажити систему, щоб зміни вступили в силу.

Як уже хтось згадував, найкраще не редагувати файл / etc / passwd вручну. Натомість я використовую команди useradd / userdel / usermod, коли це можливо. Єдина поважна причина редагування файлів / etc / passwd та / etc / group IMO - це коли мені потрібно скопіювати багато облікових записів з іншої системи. Після додавання, наприклад, 100 акаунтів таким чином, я зазвичай роблю повну перезавантаження системи. Крім того, коли ви вручну редагуєте / etc / passwd та / або / etc / groups файли, ви також не повинні забувати редагувати відповідні тіньові файли.


1

Я не думаю, що є така команда, оскільки це не потрібно в першу чергу. Також не бажано безпосередньо редагувати цей файл, натомість використовуйте відповідні команди, такі як useradd і passwd

Якщо ви не впевнені, просто перезавантажтесь після редагування цього файлу, і всі зміни стануть ефективними


0

Ви не повинні змінювати /etc/passwdвручну; використовувати usermodзамість цього

Наприклад:

Якщо ви хочете змінити домашній каталог користувача, скористайтеся цією командою:

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

1
Інколи потрібно редагувати файл вручну, але тоді його vipwслід використовувати.
Кусалаланда

Зрозумів @Kusalananda
Sun Kuo
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.