Sly*_*ven 6 init sysvinit ups nut
我一直在研究使用 sysv init 而不是 systemd(个人喜好和熟悉程度)的 Raspberry Pi UPS 代码。我正在研究特权脚本(可能是 /etc/rc.local 的一部分或从其运行)如何告诉 init电源系统中缺少电子。该init(8)手册页告诉我,写一个大写字母(“F'ailing,” O'k或批判“L'OW)成原/etc/powerstatus,但现在/var/run/powerstatus,然后发送init一个SIGPWR信号; 但有警告说:
不鼓励使用
SIGPWR和/etc/powerstatus。想要与 init 交互的人应该使用/run/initctl控制通道 - 有关更多文档,请参阅 sysvinit 包的源代码。
我查看了由 gnu.org 托管的源代码,但我没有看到任何使用这个新的奇特界面来讲述init事情的例子。
有趣的是,Hydrasystemd确实试图复制这个界面,因为我认为有些东西不喜欢它不在身边,但我还没有找到实际使用它的东西。有这样的事情吗?我希望一些与 UPS 相关的软件能够,例如,nut但我认为它不会......
这个问题虽然提到了“Raspberry Pi”,但并不是针对该平台或在其上运行的 Raspbian 等发行版。
这些问题和他们的回答对填写一些相关的细节很有启发:
编辑:上述问答中至少有一个还说明了为什么有些人有 /dev/initctl 而其他人有 /run/initctl - 这是我没有意识到的(这是 Debian 的事情)。
在 Debian 上,以下软件包使用 /run/initctl:systemd、libvirt、sysvinit、refpolicy、gradm2。(来自https://codesearch.debian.net/)。
我认为这是告诉 init 更改运行级别的正常方法。