ao executar o ps aux, mostra uids em vez de usuários

3

Estou executando o Debian 5.03. 2.6.18. Quando executo ps aux para ver os processos em execução, alguns deles mostram o uid do usuário e outros mostram o nome de usuário real. No entanto, se eu correr top, ele mostra o nome de usuário correto, não o seu uid. Por que isso está acontecendo e devo me preocupar?

1001      1877  0.0  0.7  16492  1924 ?        S    12:14   0:00 /usr/bin/php-cgi
1001      1878  0.0  0.7  16492  1924 ?        S    12:14   0:00 /usr/bin/php-cgi
1001      1879  0.0  0.7  16492  1924 ?        S    12:14   0:00 /usr/bin/php-cgi
1001      1880  0.0  0.7  16492  1924 ?        S    12:14   0:00 /usr/bin/php-cgi
1001      1881  0.0  0.7  16492  1924 ?        S    12:14   0:00 /usr/bin/php-cgi
rv        1890  0.0  1.8  16492  4964 ?        Ss   12:14   0:00 /usr/bin/php-cgi
rv        1891  0.0  1.5  16776  4168 ?        S    12:14   0:00 /usr/bin/php-cgi
rv        1892  0.0  1.5  16780  4172 ?        S    12:14   0:00 /usr/bin/php-cgi
rv        1893  0.0  1.5  16780  4172 ?        S    12:14   0:00 /usr/bin/php-cgi
rv        1894  0.0  1.5  16780  4172 ?        S    12:14   0:00 /usr/bin/php-cgi
    
por muncherelli 16.08.2010 / 18:25

5 respostas

6

Noto que todas as minhas caixas do RHEL mostram UIDs para uma conta, e é o mesmo em todas elas. (haldaemon) Provavelmente devido a quanto tempo o nome é? É o único que vejo com mais de oito caracteres. As contas que você mostrou são mais longas que essa?

Alguns pesquisando apenas isso parecem indicar que esse é o problema: link


- Christopher Karel

    
por 16.08.2010 / 19:32
3

Eu duvido que este seja seu problema, mas eu o incluo por completo. Você pode substituir a largura do campo e, se for mais curto que seus nomes de usuário, alternará automaticamente para a exibição de UIDs.

Por exemplo:

ps x o user:4,pid,cmd
    
por 16.08.2010 / 19:45
1

Normalmente, quando um UID numérico é exibido em uma situação como essa, indica que pode não haver mais uma entrada em /etc/passwd para o UID. 1001 é especificado em /etc/passwd ?

    
por 16.08.2010 / 18:57
1

Isso provavelmente significa que há um problema com o serviço de nomes de senhas ...

O rv e o 1001 são o mesmo usuário ou o rv é um usuário diferente?

Você está usando o NIS? LDAP? O que grep passwd /etc/nsswitch.conf diz que você está usando? O que diz grep :1001: /etc/passwd ?

Se você está rodando NIS ou LDAP e tendo estes tipos de problemas, você pode querer instalar o nscd e investigar problemas de performance no NIS / LDAP / qualquer servidor ...

Também é possível que você tenha coisas rodando como um ID de usuário que não existe mais no sistema. Este apache com o suexec é configurado de tal forma que os scripts PHP são executados como o usuário que os possui? Ou algum mecanismo similar? (suexec deve verificar se 1001 é um usuário válido no sistema primeiro)

    
por 16.08.2010 / 18:59
1

Eu posso confirmar que Christopher Karel está certo: eu tenho a mesma situação em uma máquina CentOS5. Além disso, também Dennis Williamson está certo em apontar que o comprimento do campo do usuário exibido pelo comando ps está relacionado a isto. Como o campo do usuário tem 8 caracteres de largura por padrão, qualquer nome de usuário mais longo será mostrado como um UID numérico ... Portanto, não há preocupações: basta definir um padrão mais amplo se desejar ver nomes completos ou passá-lo como opção ao executar o comando ps. Apenas meu 2c =)

    
por 05.07.2012 / 17:18

Tags