== How to use _systemd_ to just run some stuff on boot Suppose that you have some things that you want to get run when your system boots, [[much like _rc.local_ https://twitter.com/zaitcev/status/156970512189358080]]. They aren't necessarily daemons, you don't want to wire them up to the whole systemd magic infrastructure, you just want to run something. Let us assume that you have some shell scripts for simplicity (if you don't, it's easy to convert what you need into one or more shell scripts). When I was [[converting my old _init.d_ stuff to systemd SystemdPraise]], here is how I did this: [Unit] Description=Run my stuff After=network.target Requires=network.target [Service] Type=oneshot RemainAfterExit=True ExecStart=/some/script ExecStart=/some/other/script [Install] WantedBy=multi-user.target (The systemd service that actually runs /etc/rc.d/rc.local is a bit different; see /lib/systemd/system/rc-local.service, at least on Fedora.) If you want your rc.local equivalent to be started just as gettys and any graphical login manager are being started, it appears that you want to be after systemd-user-sessions.service. Most of the startup stuff I do doesn't need to be run that late but it does depend on networking being fully up so that the machine has an IP address and all its interfaces and so on. (One of my wishlist items for systemd is the ability for services to depend on and be triggered on various sorts of network state changes. I suspect that the systemd people see this as more the job of NetworkManager and dbus in general, but NM is not something that I can use and I'd rather avoid having a second dependency and state change management system to handle dbus events when we already have a perfectly good general one in systemd.)