Chan Kim Asked: 2024-11-01 15:24:04 +0800 CST2024-11-01 15:24:04 +0800 CST 2024-11-01 15:24:04 +0800 CST linux shell ctrl-C 不起作用(使用 busybox) 772 我正在开发一个 arm64 系统 ( Arm PL011 ),并且已经使用 u-boot-spl 、busybox 移植了 linux 5.15.68。过去,我可以在 linux shell 中输入 Ctrl-C setsid cttyhack sh 但不知何故现在它不起作用了。我还收到一个错误: can't open /dev/ttyAMA0 确实发生了一些变化,但我不知道是什么导致了这种变化。 shell 1 个回答 Voted Best Answer Chan Kim 2024-11-02T10:57:25+08:002024-11-02T10:57:25+08:00 启动时,stdin、stdout、stderr 在 上打开/dev/console,但无法使用该设备文件进行作业控制。 的作业cttyhack是查找并打开/dev/console所指的实际 tty 设备文件(基于 中的信息/sys/class/tty/console/active),但在我的例子中,相应设备的设备文件丢失了。 所以我这样做了: mknod /dev/ttyAMA0 c 204 64 进而 : setsid cttyhack sh 现在Control+C又可以正常工作了。我从我的旧笔记中得到了提示,上面说主编号和次编号分别是 204 和 64,但也可以从 中检索到该信息/sys/class/tty/ttyAMA0/dev。
启动时,stdin、stdout、stderr 在 上打开
/dev/console
,但无法使用该设备文件进行作业控制。 的作业cttyhack
是查找并打开/dev/console
所指的实际 tty 设备文件(基于 中的信息/sys/class/tty/console/active
),但在我的例子中,相应设备的设备文件丢失了。所以我这样做了:
进而 :
现在Control+C又可以正常工作了。我从我的旧笔记中得到了提示,上面说主编号和次编号分别是 204 和 64,但也可以从 中检索到该信息
/sys/class/tty/ttyAMA0/dev
。