mardi 31 décembre 2013

systemd: création répertoire dans /run

Nous voulons que notre serveur postgresql utilise un socket situé /run/postgresql.
Mais ce n'est pas ce qui est prévu au niveau de la distribution: /run/postgresql n'existe pas et donc notre serveur se plante.
Créer /run/postgresql par mkdir est d'une utilité toute relative car /run se trouve en mémoire vive et le répertoire aura disparu au prochain démarrage.
Il faudrait donc créer ce répertoire au démarrage.
Voici comment procéder si la distribution utilise systemd.
Dans /usr/lib/tmpfiles.d/, créer un fichier postgresql.conf contenant:

d /run/postgresql 2755 postgres postgres -

Par exemple comme ceci:



(Il reste à appuyer sur CTRL-D pour procéder)

Il faut ensuite s'assurer que le service postgresql sera bien activé au prochain démarrage:

[root@rigel ~]# systemctl enable postgresql.service

Bien sûr: ce est écrit ici peut être utilisé dans d'autre cas.
Il est également possible de créer des fichiers.

Pour plus de détails: man tmpfiles.d