/ etc / passwd details confusion

5

Estou ciente de que o arquivo / etc / passwd consiste em linhas de contas de usuário que compreendem 7 campos, ou seja;

username:encrypted password or token:userid:groupid:gecos:home directory:default shell 

no entanto, os detalhes de alguns usuários aparecem como

username:x:1000:1000:username,,,:/home/username:/bin/bash

O que as vírgulas representam?

EDITAR

Além do comentário de Daniel abaixo - A razão pela qual eu pergunto por que as vírgulas aparecem é porque nenhuma outra conta de usuário no / etc / passwd parece ter a mesma estrutura apesar de não ter os outros detalhes do campo gecos.

    
por PeanutsMonkey 12.04.2012 / 10:11

2 respostas

6

O campo Gecos consiste não apenas no nome de usuário, mas também em informações sobre esse usuário, por exemplo:

  • Realname
  • Número do quarto
  • Número de telefone
  • e assim por diante ...

Se olharmos para o exemplo do artigo da Wikipedia , isso fica claro:

jsmith:x:1001:1000:Joe Smith,Room 1007,(234)555-8910,(234)555-0044,email:/home/jsmith:/bin/sh

The fifth field, called the Gecos field, is commentary that describes the person or account. Typically, this is a set of comma-separated values including the user's full name and contact details.

Então, o que você está vendo é um conjunto vazio de informações do usuário. É mais provável variar de sistema para sistema como essas informações são tratadas e definidas no arquivo passwd .

    
por 12.04.2012 / 10:18
1

Como dito nos comentários à pergunta original: Por que existem vírgulas estranhas no meu arquivo / etc / passwd? e link explicam o que esses campos são.

Para responder à pergunta "por que eles aparecem para alguns usuários e não para outros": essas informações geralmente são criadas pela ferramenta que adiciona o usuário ao sistema. Não faz sentido ter, e. "Número da sala" para, e. o usuário sshd e, portanto, esses campos são deixados de fora pelo processo de criação desses usuários.

Mas por que, então, eu vejo, por exemplo?

mysql:x:107:109:MySQL Server,,,:/var/lib/mysql:/bin/false

no meu etc/passwd ? Esse usuário provavelmente foi criado por um script que, por conveniência, usou adduser (presente em muitos sistemas comuns) em vez da ferramenta useradd de nível mais baixo (acho que a nomenclatura poderia ter sido melhor) e adduser cria automaticamente os marcadores de posição da Gecos. Alternativamente, pode ter sido uma escolha consciente na criação do usuário, apenas para aderir ao formato Gecos para conformidade, mas acredito que é principalmente desnecessário nos casos.

Por que então os campos Gecos estão vazios para meu usuário regular também? Porque eu simplesmente nunca preenchei o número do quarto / etc. quando eu criei esse usuário (eu nem sei se eu tenho essa escolha durante a instalação do sistema - eu não penso assim).

(Em um sidenote: este sistema significa que um nome completo de por exemplo "Daniel Andersson, PhD" será interpretado erroneamente pela maioria das ferramentas.)

    
por 12.04.2012 / 21:08

Tags