Ubuntu: случайно изменил пользователя root на несуществующую оболочку
3880
endolith
Я попытался изменить оболочку моего пользователя, но использовал «sudo chsh» и изменил корневую оболочку на «bash» вместо «/ bin / bash». Теперь, когда я пытаюсь изменить это, я получаю «chsh: PAM аутентификация не удалась», и кажется, что другие вещи тоже не работают.
~$ sudo su Cannot execute bash: No such file or directory
Это происходит и в режиме восстановления. Что я делаю, чтобы изменить это на что-то полезное?
Это «если вы не можете войти как обычный пользователь»
Broam 14 лет назад
3
2
Joshua
Я играл с этим однажды давным-давно:
cd /bin ; sudo su
То, что происходит, без / впереди оболочка интерпретируется как относительный путь. О боже, если мы находимся в / bin, это решает правильно.
Если вы действительно застряли; спасательный CD - долгий путь. Опция загрузки init = / bin / sh сразу дает вам корневую оболочку. Курсор просто мигает без подсказок, но у вас есть корневая оболочка. Делать
set -i # mount / -o remmount,rw # vi /etc/passwd <fix it> # mount / -o remount,ro # reboot -f
2
apocalysque
Обратите внимание, что в качестве краткосрочного обходного пути вы можете использовать ключ "-s" в команде su, чтобы указать оболочку. Например:
su -s /bin/bash
начал бы сеанс su с оболочкой / bin / bash. То же самое касается sudo su -s / bin / bash (или любой другой оболочки, которую вы хотите) @Bjarke Freund-Hansen - это постоянное исправление.