bash - 如何从/etc/inittab 启动 linux shell

标签 bash interactive init job-control

我们过去在/etc/inittab 中有两个条目:

::sysinit:/etc/init.d/rcS
ttyS0::respawn:-/bin/sh

rcS 是一个 shell 脚本,它通常启动我们的应用程序,但在特殊情况下,我们调用“return”来终止它,这显然让/bin/sh 接管 tty,因为我们得到一个 shell 提示符,我们可以在其中做一些事情维护。

现在 inittab 看起来像这样:

::once:/etc/init.d/rcS

我们现在通过在 rcS 脚本中执行“/bin/bash -i”来启动 shell,因为我们不想总是运行通常从不使用的第二个 shell(由于内存限制)。

但是创建的 bash 没有作业控制功能,这是非常有限的。

所以我的问题是,我能否创建一个 shell(并可能终止 rcS 脚本),就像我们之前的解决方案中 init 处理的那样,以便我再次获得一个带有作业控制的 shell?

最佳答案

这完全取决于您运行的操作系统。这是一个适用于 RHEL/CentOS 的示例。

6:2345:respawn:/sbin/mingetty --autologin root tty6

这是其他人为类似的把戏所做的。

openvt -f -c 12 -w -- sh -c "unicode_start; echo -e '$NORPT'; exec $LOGINSH" >/dev/tty1

关于bash - 如何从/etc/inittab 启动 linux shell,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3150425/

相关文章:

javascript - ReadyState 交互与 DOMContentLoaded

python - 输入与 raw_input : Python Interactive Shell Application?

Android init.rc 在服务退出时触发

linux - 移动到 *nix 屏幕中的上一个区域

linux - bash:更改我自己的密码(不使用 root)

linux - 日期时间到纪元的转换

python - Python 中的交互式绘图?

linux - 仅在 bash 脚本中检查可执行文件时计算文件夹和可执行文件?

objective-c - 主函数上的 Exc_Bad_Access 无法通过类传递实例变量

swift - 子类 NSCoder - 是否有可失败的初始值设定项?