我正在無頭運行 Ubuntu Server 20.04,通常透過 SSH 遠端存取它。不過,它也透過串列 RS232 連接到終端伺服器(Digi CM 16),用於核心控制台日誌記錄並作為備份管理方法。
事情是這樣的:我使用 ZSH 和一些超精美的附加元件。透過 SSH 運作良好。連續劇,沒那麼多。由於 ZSH 拋出的所有控製字符,來自終端伺服器的日誌檔案通常不是很連貫。
即使我的使用者的預設 shell 是 ZSH,如何強制串列控制台登入使用 BASH?
這就是我想要的:
登入方法 | 我想要展示的外殼 |
---|---|
SSH | ZSH(使用者預設) |
串行控制台登入 | 巴什 |
插入顯示器和鍵盤並實際登錄 | 不在乎 |
我嘗試過更改 的getty
設置ttyS0
,似乎唯一的選擇是更改 的預設登入可執行文件/bin/login
,但我認為我不想這樣做?仍然想使用密碼登錄,只是想更改登入後產生的 shell只是如果登入自ttyS0
答案1
也許最簡單的方法是在 ~/.zprofile 中新增程式碼來偵測您是否在串行線路上,然後採取一些操作。
您可以從那裡執行 bash,但或者,您可以停用雜訊的 zsh 擴充並將提示重設為簡單的內容並仍然使用 zsh。
但請注意,當您使用此工具時,您應該保持第二個 shell 開啟(或擁有後門帳戶),以防您損壞了阻止您的帳戶以取得任何 shell 的內容。