- Can’t unlock linux user account
- 6 Answers 6
- Ошибка «Cannot open access to console, the root account is locked» (РЕШЕНО)
- Как разблокировать пользователя root в аварийном режиме
- Как восстановить компьютер, попавший в аварийном режиме
- Проверка дисков на ошибки
- Неудачное обновление
- Система не загружается из-за неправильной записи в /etc/fstab
- Account lock unlock status in Linux
- Solution :
Can’t unlock linux user account
I’ve got a Linux box (OpenSuSE 11.3) with a locked-out user account. I logged in as the root account to unlock it with passwd -u
6 Answers 6
I had this issue today. This was the fix.
pam_tally --user=cyberninja --reset
I hope this helps someone.
I found this post looking for an answer to this exact question. I had the same error but on a SLES 11 SP2 server. My co-worker reset my password and tried to unlock my account with the command passwd -u . One of my other co-workers said I needed clear account in PAM and gave me the command. Which I have posted above.
I now have a fix that keeps this from happening again. It seems that there are two PAM files that where in conflict. These files are; /etc/pam.d/login and /etc/pam.d/sshd . Both files have this line.
auth required pam_tally.so onerr=fail deny=3
You must commit out, this line from one of the files listed above. We commented the line out in the /etc/pam.d/sshd file.
After you do this you should never have this issue again.
Ошибка «Cannot open access to console, the root account is locked» (РЕШЕНО)
После внезапного отключения электричества, неудачного обновления или добавления нового диска в /etc/fstab вы можете столкнуться с проблемой, что ваша система не загружается, а точнее говоря, загружается в консоль или в чёрный экран. Иногда проблема усугубляется тем, что системный администратор не может попасть даже в аварийную консоль. Рассмотрим, как решить следующую ошибку:
You are in emergency mode. After logging in, type 'journalctl -xb' to view system logs, 'systemctl reboot' 'systemctl default' or "exit" to boot into default mode. Cannot open access to console, the root account is locked. See sulogin(8) man page for more details. Press Enter to continue. Reloading system manager configuration
После нажатия Enter всё может повториться.
Данное сообщение гласит, что система загрузилась в аварийном режиме (emergency mode). На самом деле это не так плохо — иногда для восстановления ОС системный администратор может намеренно загрузиться в аварийном режиме.
Настоящая проблема в том, что аккаунт root заблокирован (об этом говорит сообщение Cannot open access to console, the root account is locked) и вы не можете попасть в консоль чтобы начать решать проблемы.
Ситуация становится патовой — никуда, кроме как в консоль root, система вас не пускает, а в консоль root она не пускает тоже, поскольку этот пользователь заблокирован…
Как разблокировать пользователя root в аварийном режиме
Тем не менее, выход из данной ситуации есть. Начните с того, что загрузитесь в однопользовательский режим — это тот же самый режим, который используется для сброса пароля Linux. Ниже приведена обобщённая инструкция, если у вас что-то не получается, то отдельные инструкции для разных дистрибутивов по загрузке в однопользовательский режим вы найдёте здесь.
Остановите загрузку удерживая клавишу SHIFT при запуске компьютера, вы увидите:
Нажмите клавишу «e» и вы перейдёте к редактированию настроек загрузки:
Найдите строку, начинающуюся с linux.
Перейдите в конец этой строки, поставьте пробел и допишите:
Должно получиться примерно так (номер ядра может отличаться):
Когда всё готово нажмите Ctrl+x или F10, чтобы загрузка продолжилась с установленными опциями.
Вы увидите приглашение оболочки, также обратите внимание, что мы вошли как root, т.е. у нас имеются повышенные привилегии, в том числе на использование команды passwd:
устанавливаем пароль пользователя root.
Если команда passwd завершилась ошибкой:
passwd: Authentication token manipulation error passwd: password unchanged
то скорее всего файловая система смонтирована только для чтения. Чтобы в этом убедиться введите команду:
Буквы ro говорят о том, что файловая система смонтирована только для чтения и по этой причине сделанные изменения не могут быть сохранены. Перемонтируем файловую систему:
После этого смена пароля должна пройти успешно.
Снимаем блокировку с входа по паролю для пользователя root:
Если пользователь root заблокирован, то этого может быть недостаточно. Проверьте, какая оболочка установлена для root:
Если для root в качестве оболочки указана строка «/usr/sbin/nologin», то выполните одну из следующих команд.
sudo usermod -s /usr/bin/bash root
sudo usermod -s /usr/bin/zsh root
Чтобы выключить компьютер выполните:
Или перезагрузите компьютер командой:
Если после перезагрузки вы увидели «Give root password for maintenance», то это означает, что первый этап восстановления прошёл успешно — мы активировали пользователя root и теперь может приступить к восстановлению системы.
Как восстановить компьютер, попавший в аварийном режиме
Теперь у нас появилась возможность восстановить систему. Если у вас нет идей, что именно вызвало ошибку, то выполните команду
и попробуйте найти причину проблемы там.
Проверка дисков на ошибки
Если вы считаете, что причиной ошибки являются неполадки жёстких дисков, то используйте команды следующего вида для проверки разделов:
umount /dev/sda2 fsck -y /dev/sda2
Номер раздела и имя диска могут отличаться от «sda2», чтобы узнать точное имя, используйте команду
Неудачное обновление
Если система не загружается из-за прерванного обновления, то попробуйте следующие команды:
apt install -f -y dpkg --configure -a
Если вы считаете, что причиной проблемы стало неудачное обновление конкретного пакета, то используйте команду вида:
Эта команда проведёт повторную конфигурацию уже установленного пакета.
Например, следующая команда выполнит повторную конфигурацию ядра Linux:
dpkg-reconfigure linux-image-`uname -r`
Система не загружается из-за неправильной записи в /etc/fstab
В случае неудачного монтирования (это может случиться, если вы сделали неправильную запись в файле /etc/fstab, система не сможет загрузиться, она перейдёт в аварийный режим и будет выведено примерно следующее сообщение:
You are in emergency mode. After logging in, type "journalctl -xb" to view system logs, "systemctl reboot" to reboot, "systemctl default" or "exit" to boot into default mode. Give root password for maintenance (or press Control-D to continue):
Чтобы исправить проблему, введите пароль рута, и откройте для редактирования файл /etc/fstab:
Закомментируйте или удалите проблемную строчку. Сохраните файл (Ctrl+o), закройте его (Ctrl+x) и перезагрузитесь:
Account lock unlock status in Linux
To check the current password status of the account in Linux.
Solution :
1. To check if the account is locked or not
Below are two examples of command outputs when the account is locked and when the account is not locked.
If the account is locked out then passwd -S clearly shows Password locked or else it will show Password set status.
# passwd -S user1 user1 LK 2016-10-01 0 90 7 -1 (Password locked.) # passwd -S user1 user1 PS 2016-10-01 0 90 7 -1 (Password set, MD5 crypt.)
Also by observing the encrypted password field in /etc/shadow file, account status can be determined. If encrypted password entry is preceded by !! then the account is locked.
# cat /etc/shadow |grep -i user1 user1:$1$ZFXgKhSG$lroasdrS0QM4iji.4h1:17075:0:90:7. # cat /etc/shadow |grep -i user1 user1!!$1$ZFXgKhSG$lroasdrS0QM4iji.4h1:17075:0:90:7.
2. Lock account manually.
Sometimes it is advisable to lock accounts manually if you are suspecting some malicious activity from account. In such cases, the account can be locked instantly using the below command. Please be advised that current live sessions of that account are not affected when you are locking it out. You have to clear off /terminate currently active sessions manually to kick the user out of the system. The user won’t be able to log in to the system after the lockout.
# passwd -l user1 Locking password for user user1. passwd: Success
3. Unlock the account manually.
To unlock any locked account on the system below command can be used. Like above active sessions are not affected here as well.
# passwd -u user1 Unlocking password for user user1. passwd: Success.