Comment déterminer l'utilisateur et le groupe d'un démon dans Ubuntu?

30

Comment puis-je vérifier l'utilisateur et le groupe pour le nginxdémon dans Ubuntu?

Ou quelle est la syntaxe pour trouver l'utilisateur et le groupe d'un démon fonctionnant sous Ubuntu?

Prakash Moturu
la source
1
Je ne comprends pas la question. Vous semblez avoir très bien découvert l'utilisateur et le groupe du démon nginx.
Der Hochstapler
comment trouver l'utilisateur et le groupe pour le démon nginx
Prakash Moturu

Réponses:

38

Utilisez simplement pspendant qu'il est en cours d'exécution:

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

Comme vous pouvez le voir dans la première colonne, le processus maître nginx initial est démarré avec le rootcompte utilisateur. Ce processus générera les travailleurs sous le www-datacompte d'utilisateur. Ce serait celui dont vous vous souciez.

S'il nginxn'est pas en cours d'exécution, vous pouvez tout aussi bien extraire les informations du fichier de configuration comme suit:

oliver@ubuntuServer:~$ grep user /etc/nginx/nginx.conf
user www-data;
Der Hochstapler
la source
Donc, si je veux redémarrer nginx dans ce cas, je dois le faire avec un rootutilisateur ou un www-datautilisateur? Parfois j'obtiens un open() "/run/nginx.pid" failed (13: Permission denied)...
Augustin Riedinger
@AugustinRiedinger Vous devriez probablement utilisersudo service nginx restart
Der Hochstapler
17

Pour répondre à la partie "et groupe" de la question pour le processus en cours, utilisez également le spécificateur de format supgrp (noms des groupes supplémentaires). Essayer:

 ps -eo pid,comm,euser,supgrp | grep nginx
jwd630
la source
1

ps -eo user,comm | grep nginxvous donnera l'utilisateur qui court nginx.

topou htoppeut également être utilisé pour rechercher l'utilisateur d'un processus.

alors vous pouvez trouver le groupe d'une utilisation utilisateur: groups USERNAME

Mengdi Gao
la source
comment supprimer le userroot nginx www-data nginx www-data nginx www-data nginx www-data nginx
Prakash Moturu
pourquoi vous voulez supprimer l'utilisateur www-data? l'exécution du démon de serveur Web avec cet utilisateur est le résultat attendu. ok, vous pouvez le supprimer utilise la userdelcommande.
Mengdi Gao
1
Notez, cependant, que les groupes efficaces et supplémentaires d'un processus en cours peuvent ne pas correspondre à ceux du compte d'utilisateur pour diverses raisons. Compte tenu des CAP_SETGIDcapacités (dont la racine dispose généralement), le processus peut modifier à la fois le GID effectif et la liste de groupes supplémentaires. Pour cette raison, la pssolution est meilleure.
WGH
1

Je fais toujours 'ps aux | grep que ce soit, mais je ne suis pas administrateur. Si ce qui précède est correct et que «ps» vous indique ce que vous devez savoir, faites-le. Ensuite, vous devez faire 'kill ###' et non 'kill name' (### signifiant par exemple 17119 ci-dessus). En supposant que vous vouliez le tuer. C'est démon, pas démon, btw.

conspiritech
la source