我试图在基于runit的linux系统中运行agetty,但是我有以下问题
sh: cannot set terminal process group (136) Inappropriate ioctl for device
sh: no job control in this shell我对这个错误一无所知,你有什么想法吗?
运行agetty的脚本是
#!/bin/sh
exec /sbin/agetty 38400 tty1 linux --noclear任何帮助都会很好。
发布于 2017-01-22 18:59:22
使用setsid如下所示。
#!/bin/sh
exec setsid /sbin/agetty 38400 tty1 linux --noclearsetsid包装器将作为会话领导者(见这个答案)启动agetty,允许它绑定到tty1。
您可以从下面的示例ps中看到不同的行为。
# ps xao pid,ppid,sid,tty,cmd
[...]
150 1 150 ? runsvdir
154 150 155 ? runsv agetty-3
157 154 157 tty3 -bash
152 150 152 ? runsv agetty-4
156 152 152 ? -bash
[...]agetty-3服务使用setsid,而agetty-4没有使用。因此,tty3上的shell是会话领导者,并绑定到它的tty。tty4上的shell位于其主管的同一会话中,而不是绑定(?在tty列中)。
https://unix.stackexchange.com/questions/338214
复制相似问题