No Linux, nomes de usuário são rótulos legíveis por humanos, mas o sistema identifica os usuários com um ID de Usuário (UID) exclusivo. O mapeamento entre nomes de usuário e UIDs é armazenado no arquivo /etc/passwd, um componente crítico para o gerenciamento de usuários.
Para visualizar seu conteúdo, você pode usar um comando simples:
cat /etc/passwd
Este arquivo exibe uma lista de todos os usuários do sistema e informações detalhadas sobre eles. Cada linha representa uma única conta de usuário.
Desmembrando os Campos do /etc/passwd
A linha típica neste arquivo, muitas vezes a primeira, se parece com isto:
root:x:0:0:root:/root:/bin/bash
Esta entrada para o usuário root contém sete campos separados por dois pontos (:). Entender a estrutura do /etc/passwd no Linux é fundamental para gerenciar usuários. Vamos detalhar cada campo:
- Nome de Usuário: O nome de login do usuário (ex:
root). - Senha: Um espaço reservado para a senha criptografada do usuário. A senha real não é armazenada aqui por razões de segurança.
- Um
xindica que a senha criptografada está no arquivo/etc/shadow. - Um
*(asterisco) significa que a conta está bloqueada e não pode ser usada para login. - Um campo em branco significa que o usuário não tem senha.
- Um
- ID de Usuário (UID): O identificador numérico exclusivo para o usuário. O usuário
rootsempre tem um UID de0. - ID do Grupo (GID): O identificador numérico para o grupo primário do usuário.
- Campo GECOS: Um campo de comentário que tradicionalmente contém informações extras como o nome completo do usuário, número de telefone ou localização do escritório. É delimitado por vírgulas.
- Diretório Home: O caminho absoluto para o diretório home do usuário (ex:
/root). - Shell Padrão: O interpretador de linha de comando padrão do usuário, que é executado no login (ex:
/bin/bash).
Usuários do Sistema e Contas Especiais
Ao inspecionar o arquivo /etc/passwd, você notará muitas contas que não pertencem a usuários humanos. Estas são contas de sistema usadas para executar serviços ou processos específicos com permissões limitadas, aumentando a segurança do sistema. Por exemplo, o usuário daemon é usado para executar processos em segundo plano (daemons).
Editando o Arquivo /etc/passwd
Embora tecnicamente você possa editar o arquivo /etc/passwd diretamente usando um editor de texto ou o comando vipw, isso é fortemente desencorajado. Edições manuais podem facilmente introduzir erros de sintaxe, potencialmente bloqueando seu acesso ao sistema ou causando instabilidade.
É sempre mais seguro e confiável usar utilitários de linha de comando dedicados como useradd, usermod e userdel para gerenciar contas de usuário. Essas ferramentas são projetadas para modificar o arquivo corretamente e lidar com todas as configurações relacionadas.