J'ai besoin de créer un répertoire appartenant à la racine dans/var/run qu'un script de démarrage dans /etc/init.d utilisera. Quel est le bon moyen d'y parvenir? J'utilise Ubuntu 14.04.
Vous devez le faire à la volée. /var/run/
est un fichier tmpfs, donc recréé à chaque démarrage.
A partir du script init:
/var/run/
et modifiez les autorisations de cet utilisateur./var/run/mydaemon
plutôt que /var/run
.Si vous voulez des exemples sur la façon de faire cette vérification (il y en a plus):
/etc/init.d/ssh
/etc/init.d/bind9
/etc/init/dbus.conf
/etc/init/ssh.conf
/etc/init/cups.conf
Tous ont une sorte de mkdir
dedans. cups.conf:
mkdir -p /var/run/cups/certs
/ etc/init/cups.conf
pre-start script
[ -x /usr/sbin/cupsd ]
# load modules for parallel port support
if [ -r /etc/default/cups ]; then
. /etc/default/cups
fi
if [ "$LOAD_LP_MODULE" = "yes" -a -f /usr/lib/cups/backend/parallel \
-a -f /proc/modules -a -x /sbin/modprobe ]; then
modprobe -q -b lp || true
modprobe -q -b ppdev || true
modprobe -q -b parport_pc || true
fi
mkdir -p /var/run/cups/certs
if [ -x /lib/init/apparmor-profile-load ]; then
/lib/init/apparmor-profile-load usr.sbin.cupsd
fi
end script