mkdir -p $(DESTDIR)$(systemdsystemunitdir)/basic.target.wants
ln -sf ../udev.service $(DESTDIR)$(systemdsystemunitdir)/basic.target.wants/udev.service
ln -sf ../udev-trigger.service $(DESTDIR)$(systemdsystemunitdir)/basic.target.wants/udev-trigger.service
- ln -sf ../udev-settle.service $(DESTDIR)$(systemdsystemunitdir)/basic.target.wants/udev-settle.service
INSTALL_DATA_HOOKS += systemd-install-hook
endif
The command 'udevadm info --convert-db' is gone. The udev daemon
itself, at startup, converts any old database version if necessary.
+The systemd services files have been reorganized. The udev control
+socket is bound by systemd and passed to the started udev daemon.
+The udev-settle.service is no longer active by default. Services which
+can not handle hotplug setups properly need to actively pull it in to
+act like a barrier for basic.target. Alternatively the settle service
+can be unconditionally 'systemctl'enabled to work-around such services.
+
The fstab_import callout is no longer built or installed. Udev
should not be used to mount, does not watch changes to fstab, and
should not mirror fstab values in the udev database.
+# This barrier service is usually not enabled by default. If enabled,
+# it acts as a barrier for basic.target -- so all later services will
+# wait for udev completely finishing its coldplug run.
+#
+# It might be enabled just unconditionally, or pulled-in on-demand by
+# broken or non-hotplug-aware services that assume a fully populated
+# /dev at startup.
+
[Unit]
Description=udev Wait for Complete Device Initialization
DefaultDependencies=no
Type=oneshot
RemainAfterExit=yes
ExecStart=@sbindir@/udevadm settle
+
+[Install]
+WantedBy=basic.target