Unité user Systemd qui dépend de l'unité système (sleep.target)

Je lisais doc et je ne sais toujours pas si ce qui suit est possible:

service défini dans ~/.config/systemd/user/task.service qui dépend du système sleep.target ( ~/.config/systemd/user/sleep.target.wants/task.service ).

Maintenant, je m'attends à ce que task.service démarre lorsque $ systemctl suspend , mais task.service n'est pas démarré.

J'exécute Debian, avec systemd version 208, systemd --user configuré plus ou less comme décrit sur l' ArchWiki .

Je me request si mon scénario pourrait être mis en œuvre avec systemd, ou si --system et --user complètement isolés de manière à ce que l'unité --user ne soit pas une dépendance d'une unité --system .

Dans le cas où c'est possible, quel pourrait être le problème dans mon cas?

les services de session user systemd s'exécutent dans une instance complètement distincte de systemd et ne disposent d'aucun moyen de dépendre directement des services système.

Il y a d'autres façons d'accomplir ce que vous voulez cependant. Le plus propre serait probablement de faire ce que vous voulez exécuter lorsque le système va dormir accrocher dans les inhibiteurs de logind , puis l'exécuter comme un démon d'arrière-plan.

Une solution plus générale consisterait à logind un démon dans les inhibiteurs logind (voir systemd-lock-handler et xss-lock ), puis, lorsque le système se mettra en veille, activera une cible de session user que vous pourrez order services sous.

De systemd / User – Archwiki

systemd --user s'exécute en tant que process distinct du process systemd --system . Les unités user ne peuvent pas faire reference ou dépendent des unités du système.