NOTE: I would also like to add the UM 26.04 LTS Resolute Raccoon tag, but that is not selectable, nor can be entered manually. ![]()
Is there a CLI command(s) that can reliably report whether, for my computer, each (or which) of
-
suspend is configured correctly and functional,
-
hibernate is configured correctly and functional, and
-
hybrid sleep (suspend-then-hibernate) is configured correctly and functional.
Those states are apparently under systemd control, but I have no clue which command(s) will advise of
-
the capabilities being configured (correctly or not),
-
the capabilities being enabled and started, and
-
the "installation" of those capabilities is well-formed and correctly functional.
For a start, I located a reference suggesting the use of the following, but those reports convey information which, to me, is meaningless.
sudo systemctl status sleep.target suspend.target hibernate.target hybrid-sleep.target suspend-then-hibernate.target
○ sleep.target - Sleep
Loaded: loaded (/lib/systemd/system/sleep.target; static)
Active: inactive (dead) since Sun 2025-11-30 12:30:05 EST; 18min ago
Docs: man:systemd.special(7)
Nov 30 12:29:42 OasisMega1 systemd[1]: Reached target Sleep.
Nov 30 12:30:05 OasisMega1 systemd[1]: Stopped target Sleep.
○ suspend.target - Suspend
Loaded: loaded (/lib/systemd/system/suspend.target; static)
Active: inactive (dead)
Docs: man:systemd.special(7)
Nov 30 12:30:05 OasisMega1 systemd[1]: Reached target Suspend.
Nov 30 12:30:05 OasisMega1 systemd[1]: Stopped target Suspend.
○ hibernate.target - System Hibernation
Loaded: loaded (/lib/systemd/system/hibernate.target; static)
Active: inactive (dead)
Docs: man:systemd.special(7)
○ hybrid-sleep.target - Hybrid Suspend+Hibernate
Loaded: loaded (/lib/systemd/system/hybrid-sleep.target; static)
Active: inactive (dead)
Docs: man:systemd.special(7)
○ suspend-then-hibernate.target - Suspend; Hibernate if not used for a period of time
Loaded: loaded (/lib/systemd/system/suspend-then-hibernate.target; static)
Active: inactive (dead)
Docs: man:systemd.special(7)
What does NOT inspire confidence about the above report, is that it is showing each of the 4 services as
- "Active: inactive (dead)"
The other question that is raised is from the fact that sleep.target and suspend.target both have a report as follows,
Nov 30 12:29:42 OasisMega1 systemd[1]: Reached target Sleep.
Nov 30 12:30:05 OasisMega1 systemd[1]: Stopped target Sleep.
but hibernate.target and hybrid-sleep.target don't have a similar report, which to me is suggestive of something that is either "not configured correctly" or "broken". How to identify if such is the case, without actually entering the various commands, namely, one of
sudo systemctl suspend
sudo systemctl hibernate
sudo systemctl hybrid-sleep
Using the following commands, I get a report of "static", but that gives not indication of "verified functional, waiting for trigger signal". Only, again cryptic, "static":
sudo systemctl is-enabled suspend.target
static
sudo systemctl is-enabled hibernate.target
static
sudo systemctl is-enabled hybrid-sleep.target
static
What I find especially tantalizing is that the following is also a valid target:
sudo systemctl is-enabled suspend-then-hibernate.target
static
I have successfully "cycled" the Suspend function, as reported by the following:
sudo journalctl --boot | grep suspend
Nov 30 12:29:42 OasisMega1 ModemManager[1389]: <info> [sleep-monitor-systemd] system is about to suspend
Nov 30 12:29:43 OasisMega1 systemd-sleep[5624]: Entering sleep state 'suspend'...
Nov 30 12:29:43 OasisMega1 kernel: PM: suspend entry (deep)
Nov 30 12:30:05 OasisMega1 kernel: printk: Suspending console(s) (use no_console_suspend to debug)
Nov 30 12:30:07 OasisMega1 kernel: PM: suspend exit
Nov 30 12:30:05 OasisMega1 systemd[1]: systemd-suspend.service: Deactivated successfully.
The following supposedly tell me which states are "recognized" and "available",
sudo cat /sys/power/state
freeze mem disk
sudo cat /sys/power/mem_sleep
s2idle [deep]
But those are "cryptic" for the everyday non-Admin User. ![]()
[Edit:]
The following appears to be the meaning for those state "laels":
-
freeze: [S0] signal sending all hardware into a low-power state, returning to full-up state by a keyboard interrupt (touching any key)
-
mem: [S3] signal sending all hardware into a deeper power-down state, except for RAM, which is preserved, again returning to full-up state by touching any key on the keyboard (this appears to equate to "Suspend")
-
disk: [S4] signal triggers saving snapshot of RAM to disk, before powering-down. Restart reinstates last state by restoring RAM snapshot from the disk image. (this appears to equate to "Hibernate")
As for the reporting of "[deep]", that identifies that state as the target for "Suspend", when triggered, which is another reference to the "[S3]" state, namely "suspend to RAM", not "suspend to disk", implying that it would not survive a power-loss or battery drain-down. ![]()
I don't know what others think, but I am of the stance that the "hybrid-sleep" (a.k.a. suspend-then-hibernate) mode would be the best of both worlds.
Finally, after having reviewed all that, none of those commands tell me if any one of those "sleep" states is indeed correctly configured and functional, without having to actually trigger the functions to verify the "well-formed" installation and configuration of any one of those targets.
Does anyone have a "magic wand" to share that would perform that assessment and report?