Вопрос или проблема
Вчера я пытался обновить свою систему с 20.04 до 22.04, случайно закрыл ноутбук, который, как я предполагаю, заблокировал экран. Теперь, когда я пытаюсь его разблокировать, я получаю сообщение “Ошибка проверки подлинности”, и не могу ввести свой пароль. У кого-нибудь есть предложение, что делать? Я искал информацию, но, думаю, об этом не так много сказано.
Спасибо
Вы можете войти через tty/консоль (CTRL+ALT+F3 до F6). Оттуда вы можете проверить /var/log/dpkg.log
. Если процесс все еще продолжается, возможно, стоит его оставить.
Если вы выполняли обновление с помощью графического “Менеджера обновлений”, то можете увидеть его загрузку в “top” в терминале. Если вы использовали do-release-upgrade
, то можете увидеть это там.
Если вы использовали do-release-upgrade
, вы можете “присоединиться” к нему с помощью screen -r
, чтобы восстановить соединение. Но это невозможно, если вы использовали “Менеджер обновлений”.
В противном случае убейте выполняющееся обновление и затем сразу выполните dpkg --configure -a
, что завершит любые процессы обновления пакетов apt, которые были в процессе выполнения. Обычно этого достаточно, чтобы завершить обновление, продолжив с того места, на котором вы его приостановили.
Если вы решите пойти по этому пути, убедитесь, что убиваете правильные процессы. Не перез загружайте снова, пока не убьете процессы и не выполните dpkg
.
Найдите процесс update-manager:
ps aux | grep update-manager | grep -v grep
Если есть строка вывода вроде этой:
alan 3269811 0.0 0.0 9076 2200 pts/2 S+ 21:33 0:00 /usr/bin/update-manager
Возьмите номер из второго столбца (в моем случае 3269811, в вашем будет другой) и используйте его, чтобы убить процесс:
sudo kill -9 3269811
Я также проверю наличие процессов dpkg
с помощью:
ps aux | grep dpkg | grep -v grep
Снова, если какой-то из них запущен, мы можем убить его тем же способом, что и выше.
Теперь попробуйте завершить обновление пакетов с помощью:
sudo dpkg --configure -a
В теории, вы заметите, как некоторые пакеты быстро обновляются.
Если это сработает (т.е. закончится успешно), тогда вы можете сделать еще одно sudo apt update ; sudo apt full-upgrade
или sudo apt install ubuntu-desktop^
, на случай если что-то пропало в это время. Затем перезагрузите и скрестите пальцы 😉
Столкнувшись с этой проблемой, я смог разблокировать экран блокировки из TTY, используя команду loginctl
следующим образом
- перейдите в TTY, нажав
ctrl+alt+F3
и войдите в систему - используйте
loginctl list-sessions
, чтобы найти идентификатор сессии для заблокированной сессии, затемloginctl unlock-session <session-id>
, чтобы разблокировать сессию. В качестве альтернативы, разблокируйте все сессии, используяsudo loginctl unlock-sessions
- вернитесь к сессии X, нажав
ctrl+alt+F2
. Теперь вы должны увидеть свой рабочий стол вместо экрана блокировки.
Обратите внимание, что это сработало для меня, когда процесс обновления завис на запросе о обновлении firefox – неясно, работает ли это на всех этапах процесса обновления.
Ответ или решение
Когда вы пытаетесь выполнить обновление системы с Ubuntu 20.04 до 22.04, и по случайности закрыли крышку ноутбука, это может привести к блокировке экрана и проблемы с аутентификацией. Если вы столкнулись с ошибкой «Authentication Error» при попытке разблокировки экрана, не переживайте — ниже представлены пошаговые рекомендации для решения этой проблемы.
1. Вход через TTY/консоль
Первым делом попробуйте переключиться на TTY-терминал. Для этого выполните следующие шаги:
- Нажмите комбинацию клавиш Ctrl + Alt + F3 (или F4, F5, F6, если они заняты другими задачами).
- Введите свои учетные данные для входа.
2. Проверка состояния обновления
После успешного входа вы сможете проверить статус обновления. Для этого используйте команду:
cat /var/log/dpkg.log
Эта команда позволит вам увидеть, закончился ли процесс обновления или нет. Если он все еще выполняется, лучше подождите до его завершения.
3. Завершение зависшего процесса обновления
Если вы заметили, что процесс обновления завис, выполните следующие действия:
- Сначала найдите процесс
update-manager
, если вы использовали Oобновление через графический интерфейс:
ps aux | grep update-manager | grep -v grep
Если найдёте запущенный процесс, захватите его PID (идентификатор процесса) и используйте его для принудительного завершения:
sudo kill -9 <PID>
- Далее проверьте наличие процессов
dpkg
:
ps aux | grep dpkg | grep -v grep
Если они работают, завершите их аналогичным образом.
4. Завершение конфигурации пакетов
Теперь, когда зависшие процессы завершены, выполните команду, чтобы продолжить процесс обновления:
sudo dpkg --configure -a
Эта команда должна восстановить и завершить установку пакетов, которые были установлены до блокировки.
5. Обновление системы
После успешного завершения работы dpkg
, рекомендуется выполнить полное обновление пакетов, чтобы убедиться, что все компоненты системы актуальны:
sudo apt update && sudo apt full-upgrade
Или, если необходимо установить дополнительные компоненты рабочего стола Ubuntu:
sudo apt install ubuntu-desktop^
6. Разблокировка пользовательской сессии
Если вы по-прежнему не можете вернуться в вашу сессию, используйте команду loginctl
для разблокировки сессии:
- В TTY выполните команду:
loginctl list-sessions
- Найдите идентификатор вашей заблокированной сессии и выполните:
sudo loginctl unlock-session <идентификатор_сессии>
Либо, чтобы разблокировать все сессии:
sudo loginctl unlock-sessions
- Вернитесь к графическому интерфейсу с помощью Ctrl + Alt + F2 (или F1, если ваша графическая сессия там).
Заключение
После выполнения всех вышеперечисленных шагов, вы должны снова получить доступ к своей рабочей среде. Помните, что перезагрузка компьютера во время обновления может привести к повреждению системы, поэтому всегда следите за состоянием процесса обновления. Если проблема повторится, возможно, стоит рассмотреть использование Live CD/USB-носителя для восстановления системы или получения доступа к важным данным.