[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [HS] systemd service utilisateur



On Wed, Oct 21, 2015 at 06:20:56PM +0200, Alexandre Hoïde wrote:
> 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 ce que j'ai écrit plus haut n'est pas faux, il serait donc plus naturel
> > de laisser sytemd donner son répertoire temporaire à chacun, et si nécessaire
> > créer un répertoire temporaire commun via « /etc/tmpfiles.d ».

  Voici une petite version pure systemd-tmpfiles, écrite pour me motiver
un peu à lire les docs. Ça n'a probablement pas beaucoup de sens de le
faire ainsi et je n'ai pas trouvé d'autre moyen que d'écrire en dur un
fichier /etc/tmpfiles.d/usrtmp_<user>.conf (pas de substitutions,
variables, …).  Je serais curieux de savoir si c'est possible et comment
(en restant pur systemd). Peut-être ne suis-je pas encore tombé sur le
bon bout de doc concernant les slices ^^

Fichier service générique :
/etc/systemd/user/usrtmp.service

Fichier tmpfiles.d pour chaque utilisateur :
/etc/tmpfiles.d/usrtmp_fictif.conf

  (Toujours « systemctl --user enable usrtmp.service » pour activer
automatiquement à chaque première connexion)

-- 
 ___________________
| $ post_tenebras ↲ |       waouh !
| GNU        \ /    |      /
|          -- * --  |     o
| $ who ↲    / \    |_-- ~_|
| Alexandre Hoïde   |  _/| |
 -------------------
[Unit]
Description=Creates non persitant user /tmp dir and symblinks to ~/tmpnp.

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/bin/systemd-tmpfiles --create /etc/tmpfiles.d/usrtmp_%u.conf
ExecStop=/bin/systemd-tmpfiles --remove /etc/tmpfiles.d/usrtmp_%u.conf

[Install]
WantedBy=default.target

d /tmp/fictif_usrtmp 0700 fictif fictif
L /home/fictif/tmpnp - - - - /tmp/fictif_usrtmp
r /home/fictif/tmpnp
R /tmp/fictif_usrtmp

Reply to: