Terminal

如何在 FreeBSD 伺服器上使用串列終端?

  • June 10, 2017

我一直在嘗試使用 RS-232 零調製解調器電纜,並且很想知道如何允許 FreeBSD 使用串列埠作為終端,就像在 PDP-11 時代,所有使用者都將啞終端連接到電腦通過串列連接。我希望對帶有串列電纜的無頭 FreeBSD 機器執行相同操作,該機器連接到我的主 PC,該 PC 使用 PuTTY 通過串列埠進行通信。在你問我為什麼不出於同樣的目的使用 SSH 之前,我更喜歡這種類型的連接,因為如果網路出現故障,我仍然可以登錄伺服器並查看到底發生了什麼,而如果相同SSH 發生的情況如果這有任何意義的話,我會很不走運。我見過其他類似的問題,答案指向screenminicom但這些似乎是為了在 BSD 端履行 PuTTY 的角色,這不是我想要的。我想要的是一個以特定波特率配置並在其上getty執行的串列埠,等等,就好像它是一個實際的終端一樣。

為了回答init我正在執行什麼版本的問題,我使用的是 FreeBSD 10.3,並且我沒有在系統級別進行任何更改,因此它執行的init是使用 rc 腳本的預設 BSD 樣式。

查看 /etc/ttys 文件。它有點像 Linux 中的 gettytab。每條……終端線都有一條線。“ttyuX”用於串列埠(不同的驅動程序具有不同的設備名稱,請參閱手冊頁,例如 man uart 物理串列埠。

要啟用它們,您需要做的是將“off”(或“onifconsole”)更改為“on”,並通過以 root 身份執行“init q”來通知 init。

請記住,與 SSH 或 TELNET 等協議不同,串列埠沒有協議來協商終端類型和大小。因此,至少從您的 shell 初始化腳本執行 resizewin(1) ( http://man.freebsd.org/resizewin )。否則預設終端大小(在“stty -a”中可見)將為零,這將導致 shell 行編輯、less(1) 或 vi(1) 輸出嚴重混亂。

引用自:https://unix.stackexchange.com/questions/370023