You know only the program name and want to terminate every running process called `httpd`. Which command does that in one step?
LPIC-1 Exam 101-500, objective 103. GNU and Unix commands medium
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
Not correct kill httpd
Wrong. kill expects process IDs (or job specs like %1), not names. Given a name it reports an invalid argument rather than killing anything.
Correct killall httpd
Correct. killall takes a process name and signals every process whose name matches exactly, defaulting to SIGTERM.
Not correct pgrep httpd
Wrong. pgrep only searches the process table and prints the matching PIDs; it sends no signal. Its signalling sibling is pkill.
Not correct ps httpd
Wrong. ps reports process status. It does not signal anything, and a bare name is not even a valid ps selector.
Why
killall signals processes by name, pkill signals processes by pattern, kill signals by PID. Note the difference between the two by-name tools: killall requires the name to match exactly, while pkill matches its pattern against the name as a regular expression and will happily hit `httpd-worker` too. (That exact-match rule is the behaviour of GNU killall from psmisc, the version Linux distributions ship.)
Where this comes from
- Cited
- LPI exam objective 103.5
- What it says
- Use killall and pkill to signal processes selected by name.
Practise this
Reading one question is not practice. The trainer will draw a short set from objective 103 and space the ones you get wrong.
More questions on this objective
- A user starts a new terminal window in a running graphical desktop session, which launches bash as an interactive shell that is NOT a login shell. Which file in the user's home directory does bash read in that case? machine-checked
- In bash, which history expansion re-runs the entire previous command line? machine-checked
- Which bash command prints the literal five characters $USER instead of the current user name? machine-checked
- You want /opt/bin searched for executables, after all the directories already in PATH, in the current bash session and in every command started from it. Which command does that? machine-checked
- There is a passwd manual page in section 1 (the command) and another in section 5 (the /etc/passwd file format). Which command opens the section 5 page? machine-checked
- Select the TWO true statements about shell variables and the environment in bash. machine-checked