GNU/Linux >> Tutoriales Linux >  >> Linux

Cree un directorio en /var/run al arrancar

Solución 1:

Hay dos alternativas para que systemd cree directorios bajo /var/run / /run .

Por lo general, lo más fácil es declarar un RuntimeDirectory en el archivo de la unidad de su servicio. Ejemplo:

RuntimeDirectory=foo

Esto creará /var/run/foo para una unidad del sistema. (Nota:NO proporcione una ruta completa, solo la ruta debajo de /var/run ) Para ver los documentos completos, consulte la entrada correspondiente en los documentos de systemd.exec.


Para los directorios de tiempo de ejecución que requieren una configuración diferente o más compleja o garantías de por vida, use tmpfiles.d y haga que su paquete suelte un archivo /usr/lib/tmpfiles.d/mydaemon.conf :

#Type Path            Mode UID      GID    Age Argument
d     /run/mydaemon   0755 myuser myuser   -   -

Vea los documentos completos de tmpfiles.d aquí.

Solución 2:

Creé un servicio que haría que el directorio comenzara:

vim /etc/systemd/system/mydaemon-helper.service

El contenido de /etc/systemd/system/mydaemon-helper.service :

[Unit]
Description=MyDaemon Helper Simple Service
After=network.target

[Service]
Type=simple
ExecStartPre=-/usr/bin/mkdir /var/run/mydaemon
ExecStart=/usr/bin/chown myuser:myuser /var/run/mydaemon
Restart=on-abort


[Install]
WantedBy=multi-user.target

Luego inicié este servicio:

systemctl start mydaemon-helper

systemctl status mydaemon-helper

Salida:

[[email protected] etc]# systemctl status mydaemon-helper.service
● mydaemon-helper.service - MyDaemon Helper Simple Service
   Loaded: loaded (/etc/systemd/system/mydaemon-helper.service; disabled; vendor preset: disabled)
   Active: inactive (dead)

May 28 20:53:50 alpha systemd[1]: Starting MyDaemon Helper Simple Service...
May 28 20:53:50 alpha systemd[1]: Started MyDaemon Helper Simple Service.

Por último, le dije al sistema que lo cargara al inicio:

systemctl enable mydaemon-helper


Linux
  1. ¿Cómo maneja Linux múltiples separadores de rutas consecutivas (/home////username///file)?

  2. ¿Diferencia entre /var/log/messages, /var/log/syslog y /var/log/kern.log?

  3. “No se puede crear el directorio de caché /home//.composer/cache/repo/https—packagist.org/, o el directorio no se puede escribir. Procediendo sin caché”?

  4. Comprender el directorio /etc/xinetd.d en Linux

  5. NGINX:connect() to unix:/var/run/php7.0-fpm.sock falló (2:No existe tal archivo o directorio)

20 archivos de registro de Linux que se encuentran en el directorio /var/log

Error de visualización de lv:“Error al crear el directorio /var/lock/lvm. La inicialización del bloqueo basado en archivos falló”.

Django static_root en /var/www/... - sin permisos para recopilar estática

unix:///var/run/supervisor.sock no hay tal archivo

¿Cómo puedo mover el directorio /var/log?

¿Deberían vivir los sitios web en /var/ o /usr/ según el uso recomendado?