Cela fait un bon moment que je n’ai pas fait de nouvel article. Manque de temps, de motivation et d’idée d’article sont les principales causes.
Il n’est pas ici question de savoir si j’apprécie ou non SystemD comme système d’init. Mais de comment faire pour lancer le démon en tant qu’utilisateur non root.
Pourquoi faire de cette façon ? Tout simplement pour récupérer facilement les fichiers téléchargés à travers mon réseau via NFS.
En effet, j’ai migré d’un serveur actif seulement quelques heures par jour (je le lance en rentrant du travail) vers mon Raspberry Pi qui fonctionne 24 h / 24. Ceci est pratique pour des fichiers volumineux qui peuvent mettrent beaucoup de temps à être téléchargés.
SystemD lit par défaut les fichiers des services/démons dans le répertoire /lib/systemd
.
Toutefois, si un fichier portant le même nom est trouvé dans /etc/systemd/user
c’est celui-ci qui sera utilisé.
À l’aide du gestionnaire de fichier en mode console MC (que j’installe systèmatiquement sur toutes mes machines) j’ai copié le fichier se trouvant dans (en indiquant de ne pas garder le propriétaire et les droits, ceux de la hiérarchie s’y substituant) :
/lib/systemd/system/transmission-daemon.service
vers :
/etc/systemd/user/transmission-daemon.service
Une fois la copie effectuée, il suffit de modifier la ligne User de ce fichier en indiquant l’utilisateur non root souhaité.
Voici le résultat de la manipulation :
[Unit]
Description=Transmission BitTorrent Daemon
After=network.target
[Service]
User=<utilisateur non root>
Type=notify
ExecStart=/usr/bin/transmission-daemon -f --log-error
ExecReload=/bin/kill -s HUP $MAINPID
[Install]
WantedBy=multi-user.target
J’espère que ce petit aide mémoire pourra servir à d’autres.
Commentaires