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.

  • hitwright@lemmy.world
    link
    fedilink
    arrow-up
    8
    ·
    2 months ago

    As per systemctl(1) manual:

    If --force is specified twice, the operation is immediately executed without terminating any processes or unmounting any file systems. This may result in data loss. Note that when --force is specified twice the halt 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.

  • fortified_banana@beehaw.org
    link
    fedilink
    English
    arrow-up
    6
    ·
    2 months ago

    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.

    • Epzillon@lemmy.mlOP
      link
      fedilink
      arrow-up
      5
      arrow-down
      1
      ·
      edit-2
      2 months ago

      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!

        • ReversalHatchery@beehaw.org
          link
          fedilink
          English
          arrow-up
          1
          ·
          edit-2
          2 months ago

          man7 and such are better. This runs google analytics, and cannot work when fetch requests are disabled (also suitable for sending back anything), let alone disabling scripts

      • 𝘋𝘪𝘳𝘬@lemmy.ml
        link
        fedilink
        arrow-up
        2
        ·
        2 months ago

        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”.

  • t0m5k1@lemmy.world
    link
    fedilink
    arrow-up
    2
    ·
    2 months ago

    I’d never use it on a production server due to the implications of data loss associated with such a command.

    You could say this is the same as sysreq trigger b where everything is ignored and just reboot with ignorance.

    • Epzillon@lemmy.mlOP
      link
      fedilink
      arrow-up
      0
      ·
      2 months ago

      This is very valid but in our case we dont really store any important data on the computer. We make digital timetable signs for bus stops and train stations, the computers we build and put inside are just a base image we flash onto the disk and set hostname and IP on. Then they all connect and set themselves up via our servers and pull any displayed data from our actual main servers.

      In this case its sad that it didnt actually restart, that means our client has to drive out and deassemble the entire sign. But it seems to be a failing disk so it had to be replaced either way.

      • Todd Bonzalez@lemm.ee
        link
        fedilink
        arrow-up
        2
        ·
        2 months ago

        As long as it’s not writing to disks, you’re probably safe. This is a good method to avoid getting a remote device stuck too.

    • Strit@lemmy.linuxuserspace.show
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      2 months ago

      Instead of just linking to the information, which may be removed in the future, you could have also pasted a snippet of a relevant section. Like:

      If --force is specified twice, the operation is immediately executed without terminating any processes or unmounting any file systems. This may result in data loss. Note that when --force is specified twice the halt 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.