On Tue, Oct 27, 2015 at 01:19:08PM +0100, Sébastien NOBILI wrote: > Le mercredi 21 octobre 2015 à 18:20, Alexandre Hoïde a écrit : > > On Wed, Oct 21, 2015 at 03:54:49PM +0900, Charles Plessy wrote: > > > de mon côté je tarde à répondre car il me semblait que systemd permettait > > > d'isoler les utilisateurs les uns des autres (dans des « slices » ?), y > > > compris > > > au niveau des fichiers temporaires, mais je peine à retrouver où j'aurais > > > pu > > > lire une chose pareille... > > > > Si je comprends bien¹ (mais rien n'est moins sûr), le « contexte » > > user.slice est invoqué/utilisé en arrière plan par systemd, pour les > > processus utilisateurs (tel que mon usrtmp.service, par exemple). > > Mais au niveau où je l'exploite, il me semble que ce devrait être > > « transparent ». > > J'ai compris son fonctionnement comme toi. Je n'ai pas encore lu trop de doc > sur > le sujet et ce que j'en ai compris est surtout empirique. Si ton service est > lancé à l'ouverture de session par l'utilisateur (là je suppose puisque je > n'ai > pas lu la doc), alors l'isolation a déjà eu lieu et les différentes commandes > lancées se trouvent dans le « slice ». > > On voit tout ça à l'œuvre lorsqu'on ouvre une session (graphique ou non), des > messages apparaissent sur les consoles (mais c'est peut-être parce que j'ai > passé Systemd en debug), mais également lorsque des tâches cron sont lancées. > > D'ailleurs ce second point me fait penser à un cas que tu devrais vérifier. > Est-ce que ton service utilisateur est lancé également lors du démarrage de > tâches cron d'un des utilisateurs qui l'aurait activé ?
Oui, hé hé : Voilà un empirisme exigeant ! Mon intuition bordélique me dirait que cron n'est pas exécuté avec l'identité des contrab's des utilisateurs [et donc, logind ne verrait pas de connexion qui déclencherait le default.target de l'utilisateur]… mais la question valait bien un test (après avoir « enabled » le usrtmp.service pour l'utilisateur « fictif » et déconnecté fictif partout) : $ sudo -u fictif contrab -l 10 18 27 10 * sleep 5 && [ -d /tmp/fictif_usrtmp ] && touch /tmp/test-cron-systemd-oui || touch /tmp/test-cron-systemd-non et à 18h12 : $ ls /tmp/test-cron-systemd-* /tmp/test-cron-systemd-non et en effet, journalctl ne montre aucun « starting » correspondant (ce qui ne veut pas encore dire que mon intuition est la bonne… faudrait que je RTFM cron comme il faut ^^). C'est sympa d'être venu prêter main forte à Charles pour me démonologuer. Merci Sébastien. -- ___________________ | $ post_tenebras ↲ | waouh ! | GNU \ / | / | -- * -- | o | $ who ↲ / \ |_-- ~_| | Alexandre Hoïde | _/| | -------------------