【树莓派】串口链接树莓派打开多个终端
你好,你在串口连接树莓派时遇到无法打开多个终端的问题,这非常常见。问题的核心在于串口连接本身是独占式的,一个物理串口在同一时刻只能被一个进程访问。
这与使用 SSH 或图形界面打开多个标签/窗口有本质区别。SSH 连接的是网络端口,可以支持多个并发会话。
为什么会出现这个问题?
当你通过串口(如 USB 转 TTL 模块)连接到树莓派时,你电脑上的串口终端软件(如 minicom, screen, putty)会独占这个 COM 端口(如 /dev/ttyUSB0 或 COM3)。只要这个软件不释放,其他软件就无法再打开同一个串口。
解决方案:从串口登录后,切换到“虚拟终端”或使用多路复用器
思路是:先用串口登录一次,然后在这个唯一的连接里,创建出可以“分屏”或“多标签”的会话环境。
以下是几种最有效的方法,推荐 方法一 和 方法二:
方法一:使用 screen 或 tmux(最推荐、最强大)
这两个是 终端多路复用器,可以在一个终端连接内创建多个“虚拟窗口”。
-
首先,用串口正常登录树莓派。
-
安装多路复用器(如果系统没有预装):
sudo apt update sudo apt install screen # 或者 sudo apt install tmux -
启动
screen或tmux:screen # 或输入 tmux这时你会进入一个新的会话,看起来和普通终端一样。
-
使用快捷键来管理多个窗口:
-
对于
screen:-
Ctrl + a然后按c:创建一个新窗口。 -
Ctrl + a然后按n:切换到下一个窗口。 -
Ctrl + a然后按p:切换到上一个窗口。 -
Ctrl + a然后按":列出所有窗口,供你选择。 -
Ctrl + a然后按d:脱离当前会话(会话在后台继续运行)。 -
重新连接脱离的会话:
screen -r
-
-
对于
tmux:-
前缀键默认是
Ctrl + b。 -
Ctrl + b然后按c:创建新窗口。 -
Ctrl + b然后按n/p:切换窗口。 -
Ctrl + b然后按w:从列表选择窗口。 -
Ctrl + b然后按d:脱离会话。 -
重新连接:
tmux attach
-
-
优点:功能强大,可以保存会话,即使断开串口连接,重新登录后还能恢复工作现场。
方法二:使用 Linux 的虚拟终端(Ctrl+Alt+F1~F6)
如果你的树莓派系统是带桌面环境的(如 Raspberry Pi OS with Desktop),并且连接了显示屏,这个方法很直观。但通过串口,你其实也可以“切换”到这些虚拟终端。
-
用串口登录后,你默认处于第一个虚拟终端(比如
tty1)。 -
按下
Ctrl + Alt + F2组合键(在串口终端里,通常需要按Ctrl + Alt后再按F2,或者尝试Alt + F2)。这会切换到第二个虚拟终端。 -
你会看到一个新的登录提示符。输入你的用户名和密码,就打开了第二个独立的登录会话。
-
要切换回第一个终端,按
Ctrl + Alt + F1。F1 到 F6 通常对应着tty1到tty6。
注意:在串口连接下,按键映射有时会有点奇怪,可以多尝试 Alt+F2 或者 Esc+F2 等组合。
方法三:通过串口登录后,再开启 SSH 服务(一劳永逸)
这是最佳长期方案,一旦启用,你就可以放弃串口终端,用更强大的 SSH 客户端(如 MobaXterm, Termius, Tabby)进行多标签连接了。
-
通过串口登录树莓派。
-
确保 SSH 服务已开启:
sudo systemctl enable ssh sudo systemctl start ssh -
获取树莓派的 IP 地址:
hostname -I -
在你的电脑上,使用任何 SSH 客户端,用树莓派的 IP 地址、用户名和密码进行连接。这样你就可以轻松打开多个终端标签或窗口了。
前提:树莓派必须连接到和你的电脑在同一个局域网上(通过 Wi-Fi 或网线)。
方法四:不切实际的方案(了解即可)
-
使用
agetty或mgetty配置多个串口登录实例:这需要修改系统配置,让一个物理串口响应多个虚拟登录。配置复杂,且容易出错,不推荐新手尝试。 -
物理上使用多个串口:给树莓派再接一个 USB 转 TTL 模块,并使用额外的 GPIO 引脚。硬件和软件配置都很麻烦,仅用于特殊调试场景。
总结与直接建议
-
首选
screen或tmux:这是解决你问题最快、最专业的方法。学会基本操作(创建窗口、切换、脱离)就能极大提升效率。 -
如果只是临时需要两个终端:尝试使用
Ctrl + Alt + F1/F2切换虚拟终端。 -
如果条件允许:立即启用 SSH。串口最适合用于初始设置或网络出问题时的“救命通道”,日常开发和使用 SSH 是绝对主流,体验好太多。
操作步骤示例(用 screen):
-
串口连接,登录树莓派。
-
输入
screen并回车。 -
现在,按
Ctrl + a然后按c,你就创建了第二个终端窗口。 -
按
Ctrl + a然后按n在两个窗口间切换。 -
想暂时退出(让程序在后台运行),按
Ctrl + a然后按d。 -
下次登录后,输入
screen -r恢复之前的会话。
希望这些方法能彻底解决你的问题!

浙公网安备 33010602011771号