
Ubuntu의 bash에서 기본 쉘을 zsh로 변경했습니다. 에 설명된 단계를 사용했습니다.http://github.com/sorin-ionescu/prezto그리고 달렸다 chsh -s zsh
. 그 이후에는 로그인을 시도하자마자 팝업이 나타나 어떤 쉘에도 로그인할 수 없었습니다. gnome 터미널, xterm에서 시도하고 tty1( Alt+ Ctrl+ F1) 에서 로그인을 시도했습니다 . 열려고 하면 바로 닫힙니다.
답변1
시스템으로 돌아가려면 GRUB 내의 Linux 커널 줄 끝에 숫자 1을 추가하여 단일 사용자 모드로 부팅할 수 있습니다. 이를 수행하는 방법은 이 U&L Q&A에 대략적으로 설명되어 있습니다.루트의 로그인 셸을 시작하지 않고 루트로 프로세스를 시작할 수 있습니까?.
이 작업을 완료하면 쉘에 적용한 변경 사항을 되돌릴 수 있는 루트 권한 프롬프트가 표시됩니다. 이렇게 하면 시스템이 다시 올바르게 작동하도록 됩니다.
chsh
여기에서 이전에 사용한 방법 대신 사용자 이름으로 실행하고 싶을 것입니다 .
답변2
로 로그인하세요 root
. 설치되어 있는지 확인하세요 zsh
. 그렇지 않은 경우apt-get install zsh
답변3
터미널을 열 수 없거나 텍스트 모드로 로그인할 수 없는 데에는 두 가지 이유가 있습니다. 즉, 쉘(사용자 데이터베이스에 기록된 대로)이 존재하지 않거나 쉘의 구성 파일에 치명적인 오류가 발생한 것입니다.
성공 하면 chsh
쉘이 존재하는 것입니다( chsh
쉘이 허용 목록에 있는지 확인하고 Ubuntu의 패키지 관리는 설치된 패키지를 기반으로 목록을 업데이트합니다). 따라서 zsh
작업을 수행한 후 패키지를 제거하지 않는 한 chsh -s zsh
(이 경우에는 다시 설치해야 함) 이 경우를 배제할 수 있습니다.
따라서 Prezto에서 얻은 구성 파일 중 하나에는 버그가 있거나 잘못 설치되었거나 일부 중요한 종속성이 누락되어 있어야 합니다. 이러한 구성 파일을 다른 곳으로 옮기십시오. Nautilus와 같은 파일 관리자를 실행하고 홈 디렉토리에 다음 파일의 이름 을 바꿉니다(있는 경우): .zlogin
, .zlogout
, 및 . 기호 링크인 경우 기호 링크를 제거하고 나중에 다시 생성하면 됩니다..zprofile
.zshenv
.zshrc
이 작업을 완료하면 터미널을 열고 기본 구성으로 zsh를 사용할 수 있습니다. zsh를 처음 실행하면 새로운 사용자 설정 인터페이스가 실행됩니다(다음 지침을 따랐다면 이미 본 적이 있을 것입니다).https://github.com/sorin-ionescu/prezto).
chsh -s bash
Prezto의 문제가 해결될 때까지 쉘을 일시적으로 bash()로 다시 변경하세요 . 터미널(현재 bash 실행)을 열고 zsh
. 파일을 다시 제자리로 옮기 .z*
거나 3단계에 따라 심볼릭 링크를 다시 생성하십시오. 이제 zsh
열려 있는 터미널에서 실행하여 오류가 무엇인지 확인하십시오. 오류가 유익하지 않은 경우 실행하여 zsh -x
디버그 추적을 가져옵니다.
문제를 해결하고 zsh가 시작되면 chsh -s zsh
다시 실행하세요.