`systemctl stop backup.service` appears to hang for a minute and a half, then returns, and the journal records that the process was killed. What did systemd do?

LPIC-1 Exam 101-500, objective 101. System architecture hard

Machine-checked — no person has signed for it. This question was read against the source cited below by an automated pass, which found no contradiction. That is a weaker claim than it sounds: the same kind of process wrote the question, so it can confirm its own mistake.

Treat it as a good draft rather than as settled fact, and read the source below before you rely on it. It is not used in mock exams here — only questions a person has signed for are.

How these questions are written — where each question comes from, what the verification ledger records, and what happens when one is found wrong.

The options

Correct It sent SIGTERM, waited for TimeoutStopSec to expire, then sent SIGKILL

Correct. That is the default stop sequence, and the default timeout of ninety seconds explains the delay before the kill.

Not correct It sent SIGKILL immediately and then waited for the process's children to exit

Wrong. An immediate SIGKILL would have returned at once and would have given the service no opportunity to shut down cleanly, which is not what stopping a unit means.

Not correct It sent SIGHUP, which the service ignored, and then gave up without killing anything

Wrong. SIGHUP is conventionally a reload signal, and it is not the default stop signal. Systemd also does not give up: the journal entry in the stem shows a kill did happen.

Not correct It sent SIGSTOP, so the process is suspended rather than terminated

Wrong. SIGSTOP suspends a process without ending it, and it cannot be part of a stop sequence because a stopped process would never exit.

Why

Stopping a unit is a two-phase operation: the signal named by KillSignal, SIGTERM by default, goes to the unit's processes, and if any are still alive when TimeoutStopSec expires the signal named by FinalKillSignal, SIGKILL, follows. The timeout defaults to DefaultTimeoutStopSec in /etc/systemd/system.conf, ninety seconds on most distributions, and a unit file may set its own. This is the same discipline to apply by hand: SIGTERM first so the process can flush and release resources, SIGKILL only when it has demonstrably refused, because SIGKILL can be neither caught nor handled.

Where this comes from

Cited
manual page systemd.kill(5)

Practise this

Reading one question is not practice. The trainer will draw a short set from objective 101 and space the ones you get wrong.

Practise LPIC-1 Exam 101-500

More questions on this objective

All questions on System architecture

Practise LPIC-1 Exam 101-500