我在一台机器上安装了两个操作系统(工业应用程序遗留软件现代硬件,我会告诉你详细信息,但你没有三周的时间,而且可能不在乎)。主要的一个是 Devaun Jessie,chroot 运行的是西门子工业 Linux 8(如果您从未听说过它,请不要感到惊讶,当地的西门子经销商也没有听说过)。我已经制作了初始化链接文件,以便在两者中的正确运行级别中启动正确的程序。唯一的问题是 chroot 中有一个管理程序需要更改运行级别。通知主 init 需要从 chroot 发出运行级别更改请求的最佳方法是什么?
答案1
使用 SysVinit 更改运行级别是通过命名管道发送命令来完成的,该管道/dev/initctl
在旧版本中位于/run/initctl
jessie 下。
您可以使用绑定挂载使包含此命名管道的目录在 chroot 中可见。为了避免暴露该目录中的其他所有内容,请在同一文件系统上专门为此目的创建的目录中建立指向管道的硬链接。