BunsenLabs(Debian 衍生物)不会关闭(无法启动 poweroff.target:事务具有破坏性)

Mat*_*ski 11 shutdown udev systemd bunsenlabs

我偶然发现了我的 BunsenLabs GNU/Linux(基于 Debian)的奇怪行为。

有时我无法关闭操作系统。我是使用sudo poweroff还是 GUI 方法都没有关系。

这是我运行后得到的sudo poweroff

Failed to start poweroff.target: Transaction is destructive
Run Code Online (Sandbox Code Playgroud)

有解决方法吗?为什么会发生?


这是我的内容/lib/udev/rules.d/70-power-switch.rules

ACTION=="remove", GOTO="power_switch_end"

SUBSYSTEM=="input", KERNEL=="event*", SUBSYSTEMS=="acpi", TAG+="power-switch"
SUBSYSTEM=="input", KERNEL=="event*", KERNELS=="thinkpad_acpi", TAG+="power-switch"

LABEL="power_switch_end"
Run Code Online (Sandbox Code Playgroud)

Mat*_*ski 8

我一直在寻找解决方案一段时间,最后我找到了解决方案。它对我有用。我不知道是什么触发了这种奇怪的行为。

这是关闭 Debian 的秘诀:

  1. 运行ps aux | grep suspend
  2. 结果之一应该是这样的

    root 3651 0.0 0.0 8668 1716 ? Ss 07:18 0:00 /lib/systemd/systemd-sleep suspend
    
    Run Code Online (Sandbox Code Playgroud)
  3. 运行sudo kill 3651或任何结果的 pid 是什么。

  4. 第一次,我能够关闭PC。电脑第二次在kill命令后立即进入睡眠状态。

建议您在杀死进程之前退出图形桌面环境。

来源:Ubuntu 论坛


小智 6

我正在为这个问题添加另一个答案,因为在我的情况下没有systemd-sleep进程在运行,但我无法停止、关闭、关闭电源或重新启动我的机器。(我认为这种行为再次证明systemd完全有资格作为恶意软件,但让我们把这个讨论留到下次再说。)

最后,我求助于内核来对抗systemd. 以下与硬重启(按下电源按钮)没有太大区别,但可以提供帮助,以防您无法物理访问机器:

echo 1 > /proc/sys/kernel/sysrq
echo b > /proc/sysrq-trigger
Run Code Online (Sandbox Code Playgroud)

重新启动后,继续通过消灭地狱之子。