[systemd-devel] Bug? Ordering services on device aliases

Dave Reisner d at falconindy.com
Mon Jun 25 18:18:23 PDT 2012


On Tue, Jun 26, 2012 at 03:11:19AM +0200, Malte Starostik wrote:
> Hi Dave,
> 
> Am Montag, 25. Juni 2012, 16:23:13 schrieb Dave Reisner:
> > The premise is fairly simple, given the below unit:
> > 
> >   [Unit]
> >   Description=dhcpcd on %I
> >   Wants=network.target
> >   Before=network.target
> >   After=sys-subsystem-net-devices-%i.device
> >   BindTo=sys-subsystem-net-devices-%i.device
> > 
> >   [Service]
> >   Type=forking
> >   PIDFile=/run/dhcpcd-%I.pid
> >   ExecStart=/sbin/dhcpcd -A -q -w %I
> >   ExecStop=/sbin/dhcpcd -k %I
> > 
> >   [Install]
> >   Alias=multi-user.target.wants/dhcpcd at eth0.service
> > 
> > All I'm interested in is making sure that the device is available before
> > starting dhcpcd for an interface. However, when I enable this unit, the
> > device alias is inactive after booting:
> 
> not exactly answering your question, but dhcpcd 5.5.6 comes with this lean and 
> clean unit:
> 
> [Unit]
> Description=Lightweight DHCP client daemon
> Wants=network.target
> Before=network.target
> 
> [Service]
> ExecStart=/sbin/dhcpcd --nobackground
> 
> [Install]
> WantedBy=multi-user.target
> 
> apart from the preferable --nobackground, this starts dhcpcd on all available 
> interfaces, including those that only gonna appear later on.  To fine-tune 
> which devices to actually manage or ignore, you can then use /etc/dhcpcd.conf 
> instead.  And you only need one dhcpcd process, not one per interface.  I even 
> use that to assign static addresses and routes via dhcpcd, as I haven't found 
> anything remotely as straighforward to setup the simplest of configs.
> 
> Just some food for considerations,
> Malte
> 

Interesting! Thanks for pointing this out.


More information about the systemd-devel mailing list