On Tue, Apr 29, 2025 at 10:12:10 -0700, Van Snyder wrote: > On Tue, 2025-04-29 at 08:03 -0400, Greg Wooledge wrote: > > Your run levels are incorrect. "3" included the graphical Display > > Manager and "2" did not. > > Level 0 is shutdown > Level 1 is single user > Level 2 is multi user > Level 3 is multi user with networking > Level 4 is not used > Level 5 is GUI > Level 6 is reboot
OK... it's ugly and horrible and stupidly complicated, and much worse than I remembered. Your list matches <https://en.wikipedia.org/wiki/Runlevel#Linux_Standard_Base_specification> which shows what LSB defines for runlevels, which I believe is derived from Red Hat. In Debian, before systemd, runlevels 2 through 5 were all identical out of the box. You could configure the system's boot behavior by changing symlinks on your own system, which would cause runlevels 2-5 to differ from each other. Or, more commonly, you could simply remove whatever packages you didn't want to run. I could've sworn there was some system I used, at some point in the past, where runlevel 2 was without-DM and runlevel 3 was with-DM, but I can't remember how long ago that was. Check out some of the other systems shown on that wikipedia page to see variants. In any case, use of the numeric runlevel aliases for systemd targets is not the recommended way. Use the actual target names instead, for less confusion.