1

I'm quite an old Arch Linux user now, and was really happy with the rc.conf global system configuration file. Then comes systemd.

Still trying to get used to it. So there is my problem :

On my old PC, I enabled a network interface to start at boot time with dhcpcd like this:

# systemctl enable [email protected]

Some years later I changed the motherboard, and the network interface isn't called the same now. I had some problems with grub and new graphic drivers to install but all in all my Arch works fine. I configurated a new network interface for dhcpcd using the previous command, but I cannot find how to remove the old network interface like in the following command, since I don't remember its name... And it takes a lot of time to boot since it is a job that blocks all others.

# systemctl disable [email protected]

sudo systemctl list-unit-files | grep enabled doesn't help either because it only shows [email protected]. sudo systemctl status doesn't provide me with failed network interfaces...

So is there somewhere files where I can get this info? Or have I missed something in the man page or the excellent Arch Wiki?

I somewhat have subsidiary questions:

  • How can I do this from a chrooted environment / live CD? Editing a rc.conf file was easy to troubleshoot, but now I'm somewhat lost.
  • How can I change the launch order and to specify if a process has to be done in the background?

Sure I'll find this somewhere in the documentation, but if some helping hand could point me in the good direction.

2 Answers 2

1

Just found it by browsing the systemd files :

cd /etc/systemd
tree

There it is, under the system > multi-user.target.wants folder.

So now I can disable it. I still wish there is a better way to list this under systemd - or if there's none, be sure about it so I can file a bug report.

I'll wait for other answers.

0

I'm not on Arch and don't know how the template [email protected] looks like, but if it's loaded (and it should be, because it slows down your boot) you should see it in the output of systemctl.

If you want to learn more about systemd you should look at systemctl --help.

Listing and configuring systemd unit files from a livecd is as easy as adding --root=<path> to the systemd commands, but remember, there is no running systemd instance, so only commands working on the filesystem will work like enable disable list-unit-files.

As you found out yourself, every administrator generated configuration appear in /etc/systemd/ enable creates (most of the time) a symlink from a .target.wants to the unitfile (which might be a template). If you want to know which target gets selected, read the [Install] section in the unit file with systemctl cat <unit name>

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .