Exercise 1: Setting a Headless Server's Default Target — Possible Solution ==================================================================== sudo systemctl set-default multi-user.target -- Why a headless server should never default to graphical.target -- -- -- Per the chapter's own compare-table, graphical.target is -- multi-user.target plus a display manager/GUI on top -- and per the -- chapter's own description, "graphical.target itself Wants= -- multi-user.target, since graphical mode is a strict superset." -- A headless server, by definition, has no display attached and no -- one physically present to interact with a graphical desktop -- environment at all. Defaulting to graphical.target on such a -- machine would mean systemd spends real boot time and system -- resources starting an entire display manager and desktop stack -- that literally cannot be used or seen by anyone -- pure waste, with -- zero functional benefit, since there's no monitor for it to display -- on and no one there to log into it. -- -- multi-user.target provides everything the server actually needs -- -- full multi-user networking, services, remote access via SSH -- without -- the unnecessary overhead of a graphical stack the hardware isn't even -- equipped to display. This is exactly why the chapter names -- multi-user.target as the typical default for a headless server, and -- graphical.target as the typical default only for a desktop distro -- where a physical display and user are actually expected to be -- present. WHY THIS WORKS AS AN ANSWER ------------------------------ This gives the correct command using the chapter's own exact syntax, then explains the reasoning specifically in terms of graphical.target being a strict superset of multi-user.target (per the chapter's own stated relationship) and why that extra layer is pure waste on hardware with no display.