diff --git a/src/99-systemd.rules b/src/99-systemd.rules
index 6d4379ec951..95a91ec174e 100644
--- a/src/99-systemd.rules
+++ b/src/99-systemd.rules
@@ -32,5 +32,6 @@ SUBSYSTEM=="bluetooth", TAG="systemd", ENV{SYSTEMD_ALIAS}="/sys/subsystem/blueto
 
 SUBSYSTEM=="bluetooth", TAG="systemd", ENV{SYSTEMD_WANTS}="bluetooth.target"
 SUBSYSTEM=="printer", TAG="systemd", ENV{SYSTEMD_WANTS}="printer.target"
+ENV{ID_SMARTCARD_READER}=="*?", TAG="systemd", ENV{SYSTEMD_WANTS}="smartcard.target"
 
 LABEL="systemd_end"
diff --git a/units/smartcard.target b/units/smartcard.target
new file mode 100644
index 00000000000..28dd2bba1a9
--- /dev/null
+++ b/units/smartcard.target
@@ -0,0 +1,12 @@
+#  This file is part of systemd.
+#
+#  systemd is free software; you can redistribute it and/or modify it
+#  under the terms of the GNU General Public License as published by
+#  the Free Software Foundation; either version 2 of the License, or
+#  (at your option) any later version.
+
+# See systemd.special(7) for details
+
+[Unit]
+Description=Smart Card
+StopWhenUnneeded=yes