Can someone explain this command for me?
from Epzillon@lemmy.ml to linux@lemmy.ml on 04 Sep 2024 08:27
https://lemmy.ml/post/19918651

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.

#linux

threaded - newest

FuckyWucky@hexbear.net on 04 Sep 2024 08:46 next collapse

I hate ycombinator but here:

news.ycombinator.com/item?id=36873927

Strit@lemmy.linuxuserspace.show on 04 Sep 2024 08:52 collapse

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.

hitwright@lemmy.world on 04 Sep 2024 08:56 next collapse

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.

nerdovic@discuss.tchncs.de on 04 Sep 2024 09:31 next collapse

Ah, the --no-preserve-root flag equivalent for a reboot 😄

breakcore@discuss.tchncs.de on 04 Sep 2024 21:06 collapse

Good old --no-preserve-root 😅

dan@upvote.au on 04 Sep 2024 16:24 collapse

Sounds like the equivalent of Alt+SysRq+B.

t0m5k1@lemmy.world on 04 Sep 2024 08:59 next collapse

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.

[deleted] on 04 Sep 2024 17:14 next collapse

.

possiblylinux127@lemmy.zip on 04 Sep 2024 17:15 next collapse

You can force the kernel to terminate all processes and amount all filesystems

Epzillon@lemmy.ml on 05 Sep 2024 07:35 collapse

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 on 05 Sep 2024 23:50 collapse

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.

propter_hog@hexbear.net on 04 Sep 2024 09:11 next collapse

Obligatory “systemd was a mistake, they played us for absolute fools, yadda yadda yadda”

possiblylinux127@lemmy.zip on 04 Sep 2024 17:13 collapse

So hexbear now hates systemd. Good to know

fortified_banana@beehaw.org on 04 Sep 2024 09:25 next collapse

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.

bionicjoey@lemmy.ca on 04 Sep 2024 11:16 next collapse

In other words, RTFM

GolfNovemberUniform@lemmy.ml on 04 Sep 2024 11:50 next collapse

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

Dirk@lemmy.ml on 04 Sep 2024 12:15 next collapse

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

kungen@feddit.nu on 04 Sep 2024 16:01 collapse

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.

Dirk@lemmy.ml on 04 Sep 2024 16:05 next collapse

The -vvv I know is the same as -v -v -v. Can’t check right now, but is the short parameter -f? So maybe give -ff a try …

huginn@feddit.it on 04 Sep 2024 16:10 next collapse

It’s a dangerous command - I’d rather not run it by accidentally hitting the f key a second time.

teawrecks@sopuli.xyz on 04 Sep 2024 22:56 collapse

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.

narc0tic_bird@lemm.ee on 04 Sep 2024 15:32 next collapse

Yeah, duplicate flags should just be ignored.

secret300@lemmy.sdf.org on 04 Sep 2024 19:27 next collapse

swear, but it is funny

jwt@programming.dev on 04 Sep 2024 21:35 collapse

–force-and-I-really-mean-it-this-time

Epzillon@lemmy.ml on 04 Sep 2024 14:18 collapse

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!

secret300@lemmy.sdf.org on 04 Sep 2024 19:26 next collapse

honestly glad you made the thread still cause I just love questions like this to see if I can answer them and if I can’t I learn something

masterofn001@lemmy.ca on 04 Sep 2024 19:39 next collapse

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

ReversalHatchery@beehaw.org on 05 Sep 2024 09:33 collapse

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

desentizised@lemm.ee on 04 Sep 2024 20:48 collapse

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.

BigDotNet@lemmy.ml on 04 Sep 2024 16:40 collapse

What about if you use “sudo reboot” command?

Epzillon@lemmy.ml on 05 Sep 2024 07:29 collapse

We did try that, it just have us Permission Denied

BigDotNet@lemmy.ml on 05 Sep 2024 15:44 collapse

How about “sudo reboot -f”?