Today I just learned that systemctl --force --force reboot is a command. We had a computer we remotely connected to which got permission errors and bus errors when we tried to reboot it normally. For some reason the mentioned command did actually manage to shutdown the computer bit did not manage to reboot it correctly.

I wonder what the double --force flag actually accomplishes and what possibly could hinder a regular reboot in this scenario.

you are viewing a single comment's thread
view the rest of the comments
[–] 48 points 2 years ago (3 children)

I always try to consult the man pages for these kind of questions (you can search by typing '/' in the man page). Here's what the systemctl manual has to say in the specifications for the --force option:

Note that when --force is specified twice the selected operation is executed by systemctl itself, and the system manager is not contacted. This means the command should succeed even when the system manager has crashed.

  • source
  • hideshow 6 child comments
  • [–] 13 points 2 years ago (4 children)

    Weird choice tbh. I'd make --force --force a separate option if possible.

  • source
  • parent
  • hideshow 8 child comments
  • [–] 22 points 2 years ago (1 child)

    You just really force it.

    It's like with -v in various applications. -v means "verbose", and -vv means "really verbose", and -vvv means "an ungodly amount of data printed to the terminal, so much that it might crash".

  • source
  • parent
  • hideshow 2 child comments
  • [–] 4 points 2 years ago (3 children)

    But that's all part of the same argument. If it was -f or -ff that'd make sense. Duplicate parameters are usually ignored in like all other programs I can think of.

  • source
  • parent
  • hideshow 6 child comments
  • [–] 3 points 2 years ago

    I agree. Specifying the same param twice like this feels like it should be idempotent. Sometimes a final cmdline string is built by multiple tools concatenating their outputs together; if each one adds --force without any way to know if it's already been added elsewhere, this could lead to undesirable behavior.

    Even --forceforce would be better.

  • source
  • parent
  • [–] [S] 13 points 2 years ago* (3 children)

    I would use the man pages but my working laptop uses Windows and since the system died i dont have any way to check them until I get home.

    Thank you a lot for the answer though, that does explain a lot!

  • source
  • parent
  • hideshow 6 child comments
  • [–] 12 points 2 years ago* (1 child)

    Manpages.org

    It sounds like it should be a hookup app, but it actually is the online Linux man pages.

    Or, for a less dubious sounding site, man7.org

  • source
  • parent
  • hideshow 2 child comments
  • [–] 3 points 2 years ago

    oftentimes (and this is more of a general statement) throwing into google exactly what you would otherwise type into your shell of choice should get you on the right track, ie searching for "man systemctl"

    as far as the inability to reboot goes, if a regular sudo reboot can't bring the machine back up either then this is probably a hardware issue outside the sphere of the operating system's influence. can't say I experienced something like that myself. I guess the closest I witnessed would be a computer that when rebooted with an old USB-Keyboard plugged in just refused to get past the POST screen. The keyboard worked fine if plugged in later, but the computer couldn't reliably get through the boot process with the thing present. Maybe there's a similar variable to your setup.

  • source
  • parent