thedimas3007 Asked: 2020-01-19 10:06:33 +0800 CST2020-01-19 10:06:33 +0800 CST 2020-01-19 10:06:33 +0800 CST init:必须以 PID 1 运行 772 最近遇到一个问题:进入init 1的时候报错:init: must be run as PID 1. 我进入ps,事实证明它/sbin/init有 PID 1。我现在如何使用init? process init 1 个回答 Voted Best Answer JdeBP 2020-01-21T17:26:51+08:002020-01-21T17:26:51+08:00 你不能使用init. 这是工作的错误程序。 您需要取消学习init可以作为普通命令调用的想法。这init是/曾经是真的init程序不是您拥有的程序。有 4 个init程序可以将其作为普通命令调用,而您没有使用其中任何一个。相反,您正在使用 BusyBox init,如果它检测到它已作为系统上的进程 #1 以外的任何内容被调用,则打印该消息并退出。除了作为流程#1 之外,它没有其他功能。 BusyBox 中也没有telinit。它init没有基于 FIFO 的客户端/服务器接口。 要关闭,您必须执行最终导致SIGPWR、SIGUSR1、SIGUSR2或被SIGTERM发送到进程#1 的操作。请注意,与其他系统管理工具集一样,“单用户模式”(自 1995 年以来的用词不当)不是关闭目标。一个人不会关闭到这样的模式,BusyBoxinit实际上并没有参与制定这样的模式。 相反,在 BusyBox 之上使用 OpenRC 的系统中init,这是一种完全属于 OpenRC 机制的模式。 openrc single更改为错误命名的“单身”模式。(使用 OpenRC自己的 init,这对你来说不是这样,有一个shutdown命令可以与之对话。但事实证明,这只是一种非常迂回的运行方式openrc single。) 注意, Alpine Linux 正在记录一个过时的 OpenRC。OpenRC 本身不再有single目录。 那是在 2019 年被删除的。此外,命令rc更改为openrcin 2014。 进一步阅读 https://unix.stackexchange.com/a/463504/5132
你不能使用
init
. 这是工作的错误程序。您需要取消学习
init
可以作为普通命令调用的想法。这init
是/曾经是真的init
程序不是您拥有的程序。有 4 个init
程序可以将其作为普通命令调用,而您没有使用其中任何一个。相反,您正在使用 BusyBoxinit
,如果它检测到它已作为系统上的进程 #1 以外的任何内容被调用,则打印该消息并退出。除了作为流程#1 之外,它没有其他功能。BusyBox 中也没有
telinit
。它init
没有基于 FIFO 的客户端/服务器接口。要关闭,您必须执行最终导致
SIGPWR
、SIGUSR1
、SIGUSR2
或被SIGTERM
发送到进程#1 的操作。请注意,与其他系统管理工具集一样,“单用户模式”(自 1995 年以来的用词不当)不是关闭目标。一个人不会关闭到这样的模式,BusyBoxinit
实际上并没有参与制定这样的模式。相反,在 BusyBox 之上使用 OpenRC 的系统中
init
,这是一种完全属于 OpenRC 机制的模式。openrc single
更改为错误命名的“单身”模式。(使用 OpenRC自己的init
,这对你来说不是这样,有一个shutdown
命令可以与之对话。但事实证明,这只是一种非常迂回的运行方式openrc single
。)注意, Alpine Linux 正在记录一个过时的 OpenRC。OpenRC 本身不再有
single
目录。 那是在 2019 年被删除的。此外,命令rc
更改为openrc
in 2014。进一步阅读