Yesterday I updated both systemd (218-r3) and wpa (2.3-r2) and discovered the systemd unit files are not as easy to understand as they were.
journalctl says: Job wpa_supplicant@multi-user.service/start failed with result 'dependency'. (And doesn't say what the 'dependency' is.) That's confusing because there is no unit file with that name. systemd is apparently inserting strings like "@multi-user" in the middle of real unit file names to create that log message. wpa_supplicant now installs more unit files than before: #systemctl list-unit-files | grep wpa wpa_supplicant-nl80211@.service enabled wpa_supplicant-wired@.service disabled wpa_supplicant.service disabled wpa_supplicant@.service disabled #cat /usr/lib64/systemd/system/wpa_supplicant-nl80211\@.service [Unit] Description=WPA supplicant daemon (interface- and nl80211 driver-specific version) Requires=sys-subsystem-net-devices-%i.device After=sys-subsystem-net-devices-%i.device [Service] Type=simple ExecStart=/usr/sbin/wpa_supplicant -c/etc/wpa_supplicant/wpa_supplicant-nl80211-%I.conf -Dnl80211 -i%I [Install] Alias=multi-user.target.wants/wpa_supplicant-nl80211@%i.service Now, if I type that ExecStart command from a bash prompt it works perfectly, so why is systemd failing to start wpa_supplicant? I dunno. I'm assuming the %I stands for wlan0, so that's the way I named the conf file: /etc/wpa_supplicant/wpa_supplicant-nl80211-wlan0.conf but maybe I'm wrong about that? Thanks for any clues.