強制 bash 作為用於串行控制台登入的 shell

強制 bash 作為用於串行控制台登入的 shell

我正在無頭運行 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 的內容。

相關內容