저는 Ubuntu Server 20.04를 헤드리스로 실행하고 있으며 일반적으로 SSH를 통해 원격으로 실행하고 있습니다. 그러나 커널 콘솔 로깅 및 백업 관리 방법을 위해 직렬 RS232를 통해 터미널 서버(Digi CM 16)에 연결되기도 합니다.
문제는 다음과 같습니다. 저는 몇 가지 멋진 추가 기능과 함께 ZSH를 사용합니다. SSH를 통해 훌륭하게 작동합니다. 연재물, 그다지 많지는 않습니다. 터미널 서버의 로그 파일은 일반적으로 ZSH가 던지는 모든 제어 문자로 인해 일관성이 매우 낮습니다.
사용자의 기본 셸이 ZSH인데도 직렬 콘솔 로그인에서 BASH를 사용하도록 하려면 어떻게 해야 합니까?
내가 원하는 것은 다음과 같습니다.
로그인 방법 | 선물받고 싶은 쉘 |
---|---|
SSH | ZSH(사용자 기본값) |
직렬 콘솔 로그인 | 세게 때리다 |
모니터와 키보드를 연결하고 물리적으로 로그인하세요. | 상관없어 |
getty
에 대한 설정을 변경하려고 시도했는데 ttyS0
유일한 옵션은 에서 기본 로그인 실행 파일을 변경하는 것인 것 같지만 /bin/login
그렇게 하고 싶지는 않습니까? 여전히 비밀번호로 로그인하고 싶습니다. 로그인 후 생성된 쉘을 변경하고 싶습니다.단지다음에서 로그인하는 경우ttyS0
답변1
아마도 가장 쉬운 방법은 ~/.zprofile에 코드를 추가하여 직렬 회선에 있는지 감지하고 조치를 취하는 것입니다.
거기에서 bash를 실행할 수 있지만, 또는 시끄러운 zsh 확장을 비활성화하고 프롬프트를 간단한 것으로 재설정하고 여전히 zsh를 사용할 수 있습니다.
그러나 이 작업을 수행하는 동안 계정이 쉘을 얻지 못하게 하는 무언가가 손상될 경우를 대비하여 두 번째 쉘을 열어두거나 백도어 계정을 가지고 있어야 합니다.