Como criar um diretório em / var / run na inicialização?

2

Eu preciso criar um diretório não-root em / var / run que um script de inicialização em /etc/init.d usará. Qual é a maneira correta de alcançar isso? Estou usando o Ubuntu 14.04.

    
por prasopes 09.11.2014 / 14:50

1 resposta

4

Você precisa fazer isso na hora. /var/run/ é um tmpfs, então recriamos cada inicialização.

Do script de inicialização:

  • Crie um diretório dentro de /var/run/ e altere as permissões para esse usuário.
  • Em seguida, especifique para usar /var/run/mydaemon em vez de /var/run .

Se você quiser exemplos sobre como fazer essa verificação (há mais):

/etc/init.d/ssh
/etc/init.d/bind9
/etc/init/dbus.conf
/etc/init/ssh.conf
/etc/init/cups.conf

Todos eles têm algum tipo de mkdir . 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
    
por Rinzwind 09.11.2014 / 14:53