sudo: Пароль не принимается в Linux — быстрые исправления
Краткое резюме
Кратко: если корректный sudo пароль не принимается, сначала выйдите из сеанса или перезагрузите систему. Если это не помогает, сбросьте пароль из виртуальной консоли или перезапустите службу systemd-homed; далее приведены диагностические шаги и чеклисты.
Важно: выполняйте команды с правами администратора только если понимаете последствия. При сомнениях обратитесь к системному администратору.
Введение
Иногда в Linux при вводе правильного пароля для sudo система отвечает сообщением об ошибке. Это раздражает и мешает работе. Причины обычно простые: временный сбой сеанса, проблемы с службами управления учетными записями или сетевой аутентификацией.
Ниже — три быстрых решения, которые чаще всего помогают, а также дополнительные диагностические шаги и чеклисты для пользователя и администратора.
1. Выйдите и войдите в новый сеанс

Перезапуск системы или простой выход/вход часто устраняет временные ошибки. Это самый безопасный и быстрый шаг.
Шаги:
- Завершите текущую сессию через меню среды рабочего стола или командой logout.
- Войдите снова под тем же пользователем.
- Если это не помогло, выполните полную перезагрузку:
sudo rebootили простоrebootиз сеанса с правами root.
Важно:
- Если вы используете удалённую сессию (SSH), перезапуск удалённой машины прервет соединение. Планируйте перезагрузку заранее.
2. Сбросьте пароль из виртуальной консоли

Если выход/перезагрузка не помогли, попробуйте войти в виртуальную консоль (TTY) и сбросить пароль пользователя.
Шаги:
- Переключитесь в виртуальную консоль через сочетание клавиш Ctrl+Alt+F1 или Ctrl+Alt+F2 и т. п. Вы увидите приглашение логина в новой TTYx сессии.
- Войдите под вашей учётной записью или, если нужно, под другим пользователем с правами администратора.
- Для полной уверенности переключитесь в root при наличии sudo:
sudo su -- Смените пароль пользователя:
passwd username- После смены пароля вернитесь в графический сеанс сочетанием Ctrl+Alt+F7 или Ctrl+Alt+F1 в зависимости от дистрибутива.
Примечание:
- Если учётная запись использует удалённую аутентификацию (LDAP, Active Directory), локальная команда passwd может не применяться. В таких случаях обратитесь к администратору домена.
3. Перезапустите службу systemd-homed

systemd-homed управляет домашними каталогами и профильной информацией пользователей в системах с systemd. Иногда его сбой нарушает процесс аутентификации. Перезапуск службы обновляет состояние и может восстановить корректную работу sudo.
Шаги:
- Откройте терминал.
- Переключитесь в root:
sudo su -- Запустите или перезапустите службу:
systemctl start systemd-homed.service
systemctl restart systemd-homed.serviceЗамечания:
- Не все дистрибутивы или системы используют systemd-homed. Если службы нет, этот шаг не применим.
- Перезапуск надо делать с осторожностью на продакшн-серверах — он может разлогинить пользователей.
Дополнительная диагностика
Если описанные шаги не помогли, проверьте следующие элементы:
- Логи аутентификации: просмотрите /var/log/auth.log, journalctl -xe или системные логи для ошибок sudo, PAM или systemd-homed.
- Проверка sudoers: убедитесь, что ваша учётная запись присутствует в /etc/sudoers или в файлах в /etc/sudoers.d. Используйте visudo для редактирования.
- PAM (Pluggable Authentication Modules): ошибки в конфигурации PAM могут блокировать аутентификацию.
- Заблокированная учётная запись: проверьте состояние пароля и блокировки (chage -l username, passwd -S username, faillog -u username).
- Диск переполнен: отсутствие свободного места в /, /home или /var может нарушать запись состояния.
- Сетевые сервисы: при внешней аутентификации проверьте связь с LDAP/AD и время (NTP).
Шпаргалка команд
# проверка доступа sudo
sudo -l
# смена пароля
sudo su -
passwd username
# посмотреть логи auth
sudo journalctl -u systemd-homed -b
sudo tail -n 200 /var/log/auth.log
# перезапуск systemd-homed
sudo systemctl restart systemd-homed.service
# проверить пространство диска
df -h
# проверить состояние учётной записи
passwd -S username
chage -l usernameРоль-ориентированные чеклисты
Для обычного пользователя:
- Перезагрузите сеанс (выход/вход).
- Попробуйте другой терминал (Ctrl+Alt+F2).
- Проверьте раскладку клавиатуры и клавишу Caps Lock.
- Сообщите администратору, если использование доменной аутентификации.
Для системного администратора:
- Просмотрите логи auth и systemd.
- Проверьте /etc/sudoers через visudo.
- Убедитесь, что службы PAM и systemd-homed работают корректно.
- Проверьте работоспособность LDAP/AD и время сервера.
- При необходимости восстановите из бэкапа конфигурации пользователей.
Когда это не сработает
- Учётная запись аутентифицируется удалённым сервером (LDAP/AD) и там истёк пароль или заблокирован пользователь.
- Повреждён PAM-конфиг или в нём есть ошибочные правила блокировки.
- Используется шифрованный домашний каталог, который не монтируется, и systemd-homed не может завершить процесс инициализации.
В этих случаях требуется более глубокая проверка инфраструктуры аутентификации.
Критерии приёмки
- sudo принимает ваш пароль и вы получаете права root.
- После перезагрузки и повторного входа проблема не возобновляется.
- Логи не содержат ошибок аутентификации для вашей учётной записи.
Риски и меры смягчения
- Риск: потеря доступа к удалённому серверу при перезапуске служб или системы. Мягчение: уведомите пользователей и выполните перезапуски в окне обслуживания.
- Риск: некорректные изменения в /etc/sudoers. Мягчение: используйте visudo и храните резервную копию конфигурации.
Глоссарий
- systemd-homed — служба systemd для управления домашними каталогами и профилями пользователей.
- sudo — средство выполнения команд с правами другого пользователя, обычно root.
- TTY — текстовая консоль, отдельная сессия терминала.
- PAM — модульная система аутентификации в Linux.
Краткое резюме
Если sudo не принимает правильный пароль, начните с выхода/входа или перезагрузки. Если это не помогает, сбросьте пароль через виртуальную консоль или перезапустите systemd-homed. Для сложных случаев проверьте логи, PAM, sudoers и внешнюю аутентификацию.
Важно: при сомнениях и на продакшн-системах привлекайте администратора.
Похожие материалы
Самоподписанный SSL в Linux — создание и настройка
Как сделать Minecraft красивее с OptiFine
Как найти литературного агента быстро
Приватное видео на YouTube: как поделиться
Как исправить ошибку 0xc000000f в Windows