passwd — сменить или заблокировать пароль
Команда passwd меняет пароль своей учётной записи, а от root — задаёт, блокирует и показывает пароли других.
Шпаргалка
9 команд Версия для печати-
passwdсменить свой пароль -
sudo passwd aliceзадать пароль другому, без старого -
sudo passwd -S aliceсостояние пароля -
sudo passwd -l aliceзаблокировать вход по паролю -
sudo passwd -u aliceразблокировать -
sudo passwd -e aliceсменить пароль при следующем входе -
sudo passwd -d aliceудалить пароль (вход без пароля!) -
sudo passwd -x 90 -w 7 aliceсрок пароля 90 дней, предупредить за 7 -
echo 'alice:NewPass-2026' | sudo chpasswdиз скрипта
Обзор
passwd меняет пароль учётной записи. Обычный пользователь меняет только свой и
сначала вводит текущий. Root (через sudo) задаёт пароль любому без старого:
Символы пароля при вводе не отображаются — ни буквы, ни звёздочки. Это нормально: набирай и жми Enter.
Сам пароль нигде не хранится: в /etc/shadow лежит его хэш (в Ubuntu 24.04
строка начинается с $y$ — алгоритм yescrypt). Прочитать /etc/shadow может
только root.
Состояние пароля показывает -S:
Поля: имя; P — пароль задан, L — заблокирован, NP — пароля нет; дата
последней смены; мин. и макс. срок в днях; за сколько дней предупреждать; дней
после истечения до блокировки (-1 — не задано).
Ключи
8Сроки пароля подробнее и нагляднее показывает chage (chage -l alice). Полный
список ключей — man passwd.
| Ключ | Что делает | Пример |
|---|---|---|
-S --status |
Состояние пароля — P задан, L заблокирован, NP нет; даты и сроки. | sudo passwd -S alice |
-l --lock |
Заблокировать вход по паролю. Вход по ключу SSH остаётся. | sudo passwd -l alice |
-u --unlock |
Снять блокировку пароля. | sudo passwd -u alice |
-e --expire |
Потребовать смену пароля при следующем входе. | sudo passwd -e alice |
-d --delete |
Удалить пароль — учётка остаётся с пустым паролем. опасно | sudo passwd -d alice |
-x --maxdays days |
Максимальный срок жизни пароля в днях. | sudo passwd -x 90 alice |
-w --warndays days |
За сколько дней до истечения предупреждать. | sudo passwd -w 7 alice |
-a --all |
С -S — состояние паролей всех учётных записей. | sudo passwd -S -a |
Ничего не найдено. Попробуй запрос короче.
Рецепты
3Заблокировать вход, не удаляя учётку
passwd -l закрывает только вход по паролю: ключ SSH продолжит работать. Чтобы
закрыть вход полностью, нужен ещё nologin или chage -E 0.
Пароли для нескольких пользователей сразу
chpasswd читает пары имя:пароль. Не оставляй такие строки в истории оболочки
и файлах: это пароли открытым текстом.
Неполадки
5passwd: Authentication token manipulation error
passwd не смог сменить пароль. Причины по частоте: неверно введён текущий пароль;
два ввода нового не совпали (строкой выше — Sorry, passwords do not match.); новый
пароль не прошёл проверку — короткий, простой или похож на старый. Если ошибка у
root и пароль точно ни при чём — проверь, что корень не смонтирован только для
чтения (findmnt /) и что на нём есть место (df -h /).
passwd: password unchanged
Итоговая строка после любой такой неудачи. Причину называет строка над ней.
passwd: You may not view or modify password information
Обычный пользователь пытается посмотреть или сменить чужой пароль. Нужен root:
sudo passwd -S alice.
После passwd -l пользователь всё равно входит
Он входит по ключу SSH: блокировка пароля ключи не трогает. Закрой вход через
sudo usermod -s /usr/sbin/nologin alice или sudo chage -E 0 alice.
Ввожу пароль, а на экране ничего не появляется
Так и задумано: пароль не показывается. Набери его целиком и нажми Enter; если сбился — Ctrl+U сотрёт набранное.
Опасно
2passwd -d открывает вход без пароля
После passwd -d у учётной записи пустой пароль, и в зависимости от настроек PAM и
SSH в неё можно войти, ничего не вводя. Если нужно запретить пароль, используй
passwd -l, а не -d.
Пароль root
sudo passwd root включает вход под root по паролю: в Ubuntu он по умолчанию
выключен, и администрирование идёт через sudo. Не включай его без причины.
См. также
Есть неточность? Сообщить об ошибке в статье