Не может открыть оболочку после изменения оболочки по умолчанию

У меня есть та же проблема после недавнего обновления и если бы Debian имел историю обновления, то я нашел бы, какое обновление сделало это и возвращается он назад к старому, поскольку компьютер почти неприменим, как это теперь.

4
15.06.2014, 01:29
3 ответа

Для возврата в систему можно загрузиться в однопользовательский режим, добавив в GRUB число 1 в конце строки ядра linux. Метод для этого примерно описан в этом U&L Q&A под заголовком: Могу ли я запустить процесс от имени root без запуска оболочки логина root?.

Как только вы это сделаете, вы получите приглашение root, откуда сможете отменить изменения, внесенные в вашу оболочку. Это вернет вашу систему обратно, чтобы она работала правильно.

Отсюда вы, скорее всего, захотите запустить chsh для вашего имени пользователя вместо того метода, который вы использовали ранее.

4
27.01.2020, 20:51

Login как root. Убедитесь, что установлен zsh. Если нет apt-get install zsh

2
27.01.2020, 20:51

Есть две причины, по которым вы не сможете открыть терминал или войти в систему в текстовом режиме: либо ваша оболочка (как записано в пользовательской базе данных) не существует, либо файл конфигурации вашей оболочки отключается из-за фатального ошибка.

Если chsh завершился успешно, значит, ваша оболочка существует ( chsh проверяет, находится ли оболочка в разрешенном списке, а управление пакетами Ubuntu обновляет этот список на основе установленных пакетов). Поэтому, если вы не удалили пакет zsh после выполнения chsh -s zsh (в этом случае вам следует просто переустановить его), мы можем исключить этот случай.

Таким образом, один из файлов конфигурации, которые вы получили от Prezto, должен содержать ошибки, неправильно установлен или в нем отсутствует какая-то критическая зависимость. Уберите эти файлы конфигурации с пути. Запустите файловый менеджер, например Nautilus, и переименуйте следующие файлы в домашнем каталоге (если они есть): .zlogin , .zlogout , .zprofile , .zshenv и .zshrc . Если это символические ссылки, просто удалите символические ссылки, и вы создадите их позже.

Как только вы это сделаете, вы сможете открыть терминал и начать использовать zsh с его конфигурацией по умолчанию. При первом запуске zsh запустится его новый интерфейс настройки пользователя (вы, должно быть, уже видели его, если следовали инструкциям в https://github.com/sorin-ionescu/prezto ).

Временно измените командную оболочку на bash ( chsh -s bash ), пока не решите проблему с Prezto. Откройте терминал (теперь запущенный bash) и запустите zsh . Верните файлы .z * на место или заново создайте символические ссылки после шага 3. Теперь запустите zsh в этом открытом терминале и посмотрите, в чем заключаются ошибки. Если ошибки неинформативны, запустите zsh -x , чтобы получить трассировку отладки.

Решив проблему и запустив zsh, снова запустите chsh -s zsh .

1
27.01.2020, 20:51

Теги

Похожие вопросы