It says in the fedora documentation that you can append this line to the boot options to change the *.target that loads temporarily at boot.

systemd.unit=rescue.target

Nothing seems to happen it still boots into a graphical environment, is there any reason this might be happening? I don't want to find a substitute for this command, I would really like to know why this one is not working.

1 Answer
1

@Rubixibuc, fedora 15 onwards, the Sys V style of init startup in Linux is changed/evolved into using systemd. Systemd is a new framework, its a drop in replacement of init and init related configurations like inittab for runlevel configurations are not used, instead runlevels are changed to the terminology of targets. systemd provides aggressive parallelization capabilities, uses socket and D-Bus activation for starting services, offers on-demand starting of daemons, keeps track of processes using Linux cgroups, supports snapshotting and restoring of the system state, maintains mount and automount points and implements an elaborate transactional dependency-based service control logic. It is intended to provide a better framework for expressing services' dependencies, allow more work to be done in parallel at system startup, and to reduce shell overhead.

As far as your question goes:

Q: How do I change the default runlevel to boot into?

A: The symlink /etc/systemd/system/default.target controls where we boot into by default. Link it to the target unit of your choice. For example, like this:

A: Note that there might be more than one target active at the same time. So the question regarding the runlevel might not always make sense. Here's how you would figure out all targets that are currently active:

$ systemctl list-units --type=target
If you are just interested in a single number, you can use the venerable runlevel command, but again, its output might be misleading.

I meant how do I change the run level temporarily at boot like we used to be able to do with other methods. How do we do it with systemd
–
rubixibucDec 9 '11 at 4:29

First look at what all targets can you boot into under /lib/systemd/system/ and append that target to kernel line at grub menu. It should be systemd.unit= as you correctly noted.
–
Nikhil MulleyDec 9 '11 at 4:40