¿Cómo determinar el usuario y el grupo de un demonio en Ubuntu?


30

¿Cómo puedo verificar el usuario y el grupo para el nginxdemonio en Ubuntu?

¿O cuál es la sintaxis para encontrar el usuario y el grupo de un demonio que se ejecuta en Ubuntu?


1
No entiendo la pregunta. Parece que has encontrado bien al usuario y al grupo para el demonio nginx.
— Der Hochstapler

cómo encontrar el usuario y el grupo para el nginx deamon
— Prakash Moturu

Respuestas:


38

Simplemente use psmientras se está ejecutando:

oliver@ubuntuServer:~$ ps aux|grep nginx|grep -v grep
root     17119  0.0  0.1  57492  1156 ?        Ss   14:22   0:00 nginx: master process /usr/sbin/nginx
www-data 17120  0.0  0.1  57804  1572 ?        S    14:22   0:00 nginx: worker process
www-data 17121  0.0  0.1  57804  1572 ?        S    14:22   0:00 nginx: worker process
www-data 17122  0.0  0.1  57804  1572 ?        S    14:22   0:00 nginx: worker process
www-data 17123  0.0  0.1  57804  1572 ?        S    14:22   0:00 nginx: worker process

Como puede ver en la primera columna, el proceso maestro inicial de nginx se inicia con la rootcuenta de usuario. Este proceso generará los trabajadores bajo la www-datacuenta de usuario. Este sería el que te importa.

Si nginxno se está ejecutando, también puede extraer la información del archivo de configuración de la siguiente manera:

oliver@ubuntuServer:~$ grep user /etc/nginx/nginx.conf
user www-data;

Entonces, si quiero reiniciar nginx en este caso, ¿debo hacerlo con el rootusuario o el www-datausuario? A veces me sale un open() "/run/nginx.pid" failed (13: Permission denied)...
— Augustin Riedinger

@AugustinRiedinger Probablemente deberías usarsudo service nginx restart
— Der Hochstapler

17

Para responder la parte "y grupo" de la pregunta para el proceso en ejecución, use también el especificador de formato supgrp (nombres de grupos suplementarios). Tratar:

 ps -eo pid,comm,euser,supgrp | grep nginx

1

ps -eo user,comm | grep nginxle dará el usuario que ejecuta nginx.

topo también htoppuede usarse para encontrar al usuario de un proceso.

entonces puede encontrar el grupo de usuarios que usa: groups USERNAME


cómo eliminar la raíz del usuario nginx www-data nginx www-data nginx www-data nginx www-data nginx
— Prakash Moturu

¿Por qué quieres eliminar usuario www-data? ejecutar el servidor web demonio con este usuario es el resultado esperado. ok, puedes borrarlo usando el userdelcomando.
— Mengdi Gao

1
Sin embargo, tenga en cuenta que los grupos efectivos y complementarios de un proceso en ejecución pueden no coincidir con los de la cuenta de usuario por varias razones. Dada la CAP_SETGIDcapacidad (que normalmente tiene la raíz), el proceso puede modificar tanto el GID efectivo como la lista de grupos complementarios. Debido a esto, la pssolución es mejor.
— WGH

1

Siempre hago 'ps aux | grep lo que sea 'pero no soy administrador. Si lo anterior es correcto y 'ps' le dice lo que necesita saber, hágalo. Luego debe hacer 'kill ###' no 'kill name' (### significa, por ejemplo, 17119 desde arriba). Asumiendo que quieres matarlo. Es demonio, no demonio, por cierto.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.