usuarios son servicios servicio los listar hat demonios cuales crear comandos administracion linux logging debian root

son - ¿Cómo debo iniciar sesión desde un demonio Debian Linux no root?



listar usuarios en linux (4)

Debe crear un subdirectorio como /var/log/mydaemon tenga la propiedad del usuario del daemon

Estoy escribiendo un nuevo daemon, que se alojará en Debian Linux.

Descubrí que / var / log solo tiene permisos de escritura, por lo que mi daemon no puede escribir archivos de registro allí.

Sin embargo, si escribe allí, parece que obtendrá rotación automática de registros y también funcionará como lo esperaría un usuario.

¿Cuál es la forma recomendada para que un daemon escriba las entradas de registro que aparecen en / var / log, sin tener que ejecutarse como root?

El daemon es un servidor web, por lo que el tráfico de registro será similar a Apache.



Como root, cree un archivo de registro allí y cambie el propietario de los archivos al usuario del servidor web:

# touch /var/log/myserver.log # chown wwwuser /var/log/myserver.log

Entonces el servidor puede escribir en los archivos si se ejecuta como usuario wwwuser . Sin embargo, no ganará rotación automática de registros. /etc/logrotate.conf agregar el archivo de registro a /etc/logrotate.conf o /etc/logrotate.d/... y hacer que el servidor vuelva a abrir el archivo de registro cuando lo /etc/logrotate.conf /etc/logrotate.d/... .

También puede usar syslog para el registro, si es que se ajusta mejor a su situación.


Dos opciones:

  1. Comience como root , abra el archivo, luego suelte los permisos con setuid . (No recuerdo las llamadas exactas del sistema para descartar permisos). De todos modos, tendrá que hacer esto si desea vincularse al puerto TCP 80 o cualquier puerto por debajo de 1024.
  2. Cree un subdirectorio como / var / log / mydaemon que tenga la propiedad del usuario del daemon, como dijo WiseTechi .

Los archivos en /var/log no se giran automáticamente; en cambio, la rotación está controlada por /etc/logrotate.conf y los archivos en /etc/logrotate.d .