Quantcast
Channel: SuSE Linux – The Wiert Corner – irregular stream of stuff
Viewing all articles
Browse latest Browse all 217

OpenSuSE Tumbleweed – when `halt` doesn’t halt, but CLI+HLT the CPU at the end of the shutdown procedure

$
0
0
When halt is not a real halt but a suspend of the CPU.

When halt is not a real halt but a “disabling” of the CPU.

TL;DR:

Don’t use halt, use poweroff instead.

A while ago I wrote about OpenSuSE 12.x not halting after a halt:

The same holds for more recent OpenSuSE systems, but ESXi would never tell what was going on.

Recently I installed an OpenSuSE Tumbleweed system under VMware Fusion (running on Mac OS X) which indicated “The CPU has been disabled by the guest operating system.”

Log indicates a

Log indicates a “Shutdown” which in fact is a CPU not powered down.

Which — Understanding the message: The CPU has been disabled by the guest operating system (2000542) | VMware KB [WayBack] — means that halt will not power down the VM but perform a CLI + HLT on the CPU. This effectively hangs the CPU even though the console log on the right tells does a real Shutdown.

In the past – even under ESXi – a halt would just power down the system, so based on the above I did more digging and fount this very interesting answer in rhel – What is the difference between these commands for bringing down a Linux server? – Unix & Linux Stack Exchange [WayBack] which comes down to:

  • on a systemd [WayBack] based system commands like halt, reboot, shutdown all invoke systemctl [WayBack] calling for a specific target [WayBack].
  • mapping of targets and commands is as follows (quoted from the answer):
    • systemctl isolate halt.target has the shorthands:
      • shutdown -H now
      • systemctl halt
      • plain unadorned halt
    • systemctl isolate reboot.target has the shorthands:
      • shutdown -r now
      • telinit 6
      • systemctl reboot
      • plain unadorned reboot
    • systemctl isolate poweroff.target has the shorthands:
      • shutdown -P now
      • telinit 0
      • shutdown now
      • systemctl poweroff
      • plain unadorned poweroff
    • systemctl isolate rescue.target has the shorthands:
      • telinit 1
      • systemctl rescue
    • systemctl isolate multi-user.target has the shorthands:
      • telinit 2
      • telinit 3
      • telinit 4
    • systemctl isolate graphical.target has the shorthand:
      • telinit 5

For a SysV [WayBack] init runlevels versus systemd targets see:

The systemd parameters making things a bit confusing, for instance you can do reboot --halt and more of those shown in linux – Are there any good reasons for halting system without cutting power? – Super User [WayBack].

That also explains that halt without a powerdown can be useful: it for instance gives the end-user the opportunity to click the reset button instead of the power button after a halt.

–jeroen


Filed under: *nix, Linux, openSuSE, Power User, SuSE Linux, systemd, SysVinit, Tumbleweed

Viewing all articles
Browse latest Browse all 217

Trending Articles