Linux: Como listar todos os usuários

Para listar todos os usuários no Linux, o melhor comando de uso geral é `getent` getent passwd. Se você quiser apenas os nomes de usuário, execute ` getent username` getent passwd | cut -d: -f1. Isso geralmente é mais completo do que ler /etc/passwddiretamente o nome de usuário, porque o `getent` segue a configuração do Name Service Switch (NSS) do sistema , podendo incluir contas fornecidas por serviços como LDAP ou outras fontes de identidade configuradas.

Liste todos os usuários com getent

Abra um terminal e execute o seguinte comando:

getent passwd

Cada linha representa um registro de usuário. Para exibir apenas os nomes de login, utilize:

getent passwd | cut -d: -f1

Você também pode consultar uma conta conhecida sem precisar percorrer a lista completa:

getent passwd alice

A documentação da Biblioteca GNU C explica que o NSS controla como os bancos de dados do sistema, como o `/etc/sysctl`, passwdsão resolvidos por meio do `/etc/sysctl` /etc/nsswitch.conf. Consulte a documentação do NSS da Biblioteca GNU C.

Terminal Linux mostrando o comando getent passwd e vários registros de contas de usuário.
getent passwdExibe os registros de conta disponíveis por meio das fontes de banco de dados de usuários configuradas.

Listar usuários locais de /etc/passwd

Se você deseja armazenar contas especificamente no banco de dados de senhas local, leia o /etc/passwdarquivo . O arquivo contém um registro separado por dois pontos para cada conta local. Um registro típico inclui o nome de usuário, um espaço reservado para a senha, o UID, o GID primário, um campo de comentário, o diretório inicial e o shell de login.

Somente para nomes de usuário:

cut -d: -f1 /etc/passwd

O mesmo resultado pode ser obtido com awk:

awk -F: '{print $1}' /etc/passwd

Essa lista normalmente inclui tanto usuários humanos quanto contas de serviço, como contas de administrador root, daemoncontas de usuário ou contas criadas por softwares instalados.

Terminal Linux mostrando o comando `cut` extraindo nomes de usuário do arquivo local `/etc/passwd`.
O cutcomando extrai apenas o primeiro campo, que é o nome de usuário.

Veja os registros completos da conta local.

Para inspecionar o arquivo local completo, use lesspara que você possa rolar confortavelmente:

less /etc/passwd

Você também pode imprimir o arquivo diretamente:

cat /etc/passwd

Em sistemas Linux modernos, o campo de senha geralmente contém x. Isso não significa que a senha seja armazenada como texto simples em /etc/passwd; os hashes de senha são normalmente mantidos separadamente em /etc/shadow, que possui permissões mais restritivas. O projeto Linux man-pages documenta os sete campos e esse comportamento de senha oculta em passwd(5) .

Terminal Linux exibindo registros completos separados por dois pontos do arquivo /etc/passwd
Uma /etc/passwdentrada completa contém o nome de usuário, UID, GID, diretório inicial, shell e outros campos da conta.

Liste os nomes de usuário com o Bash compgen.

Se você estiver usando Bash, compgenpode gerar candidatos para autocompletar nomes de usuário:

compgen -u

Para obter um resultado extenso, navegue pelas páginas com:

compgen -u | less

Ou remova os nomes duplicados e ordene a saída:

compgen -u | sort -u

compgené um comando interno do Bash, portanto é menos universal do que getentpara scripts que precisam funcionar em diferentes shells. O manual do GNU Bash documenta o uso compgende `cd` como parte dos recursos de autocompletar programáveis ​​do Bash.

Terminal Linux mostrando o comando `compgen -u` redirecionado para o comando `less` com uma lista paginada de nomes de usuário.
Em Bash, compgen -u | lessfornece uma lista paginada de nomes de usuário.

Como exibir usuários comuns em vez de contas de serviço?

Não existe um limite de UID único que seja correto para todas as distribuições Linux ou organizações. Muitos sistemas reservam UIDs mais baixos para contas de sistema e atribuem usuários comuns a partir de um mínimo configurado, mas essa política pode variar. Se o seu sistema usa UIDs /etc/login.defs, você pode verificar o mínimo configurado com:

grep '^UID_MIN' /etc/login.defs

Você também pode procurar por contas com shells interativos como uma pista prática:

getent passwd | awk -F: '$7 !~ /(nologin|false)$/ {print $1}'

Isso é apenas uma heurística: uma conta pode ter um shell interativo sem ser um usuário comum de desktop, e usuários gerenciados externamente podem seguir políticas de UID diferentes.

Salvar, contar ou pesquisar a lista de usuários

Depois de obter a lista necessária, as ferramentas padrão do shell facilitam a sua reutilização:

  • Salvar nomes de usuário: getent passwd | cut -d: -f1 > ~/linux-users.txt
  • Contagem de contas retornadas: getent passwd | cut -d: -f1 | wc -l
  • Encontrar uma conta: getent passwd username

Qual método você deve usar?

ComandoMelhor para
getent passwdMelhor padrão; segue as fontes de usuário NSS configuradas.
cut -d: -f1 /etc/passwdSomente nomes de usuário locais
cat /etc/passwdouless /etc/passwdInspecionando registros completos de contas locais
compgen -uListagem rápida de nomes de usuário do Bash

Para a maioria dos administradores e usuários de desktop, comece com getent passwd | cut -d: -f1. Use /etc/passwdquando você precisar intencionalmente apenas de contas locais.

Deixar um comentário

Como ler códigos QR em um computador Linux

Como ler códigos QR em um computador Linux

Escaneie códigos QR no Linux com o CoBang usando uma webcam ou um arquivo de imagem. Veja as opções de instalação, etapas de configuração e correções para acesso à câmera via Flatpak.

Como alterar as configurações da webcam no Linux com o Cameractrls

Como alterar as configurações da webcam no Linux com o Cameractrls

Altere as configurações da webcam no Linux com o Cameractrls: ajuste a exposição, a cor, a redução de cintilação e outros controles compatíveis e, em seguida, verifique os modos de vídeo compatíveis.

Como instalar o PhpStorm no Linux: Toolbox, Tar.gz, Snap e AUR

Como instalar o PhpStorm no Linux: Toolbox, Tar.gz, Snap e AUR

Instale o PhpStorm no Linux com o JetBrains Toolbox ou o arquivo tar.gz independente, além das opções Snap e Arch AUR. O Java já está incluído.

Como configurar dois painéis no XFCE 4

Como configurar dois painéis no XFCE 4

Crie um painel XFCE 4 separado para cada tela, atribua o segundo painel à saída correta, posicione-o e dimensione-o e adicione os atalhos e itens de status necessários.

Como instalar o Cisco Packet Tracer no Linux

Como instalar o Cisco Packet Tracer no Linux

Baixe o Cisco Packet Tracer 9.0.1 para Ubuntu 64 bits, instale o pacote DEB com o APT, aceite a licença no Terminal e faça login para iniciar um laboratório.

Como recortar uma imagem no Linux com o GIMP

Como recortar uma imagem no Linux com o GIMP

Remova o fundo de uma foto no Linux com o GIMP: trace o contorno do objeto, exclua o fundo selecionado, mantenha a transparência e exporte um PNG reutilizável.

Como fazer backup de um CD-ROM como um arquivo ISO no Linux

Como fazer backup de um CD-ROM como um arquivo ISO no Linux

Crie uma imagem ISO de CD-ROM no Linux com o GNOME Disks ou o comando dd. Identifique a unidade óptica, monitore a cópia, verifique a imagem e saiba quando um disco danificado ou de áudio precisa de outra ferramenta.

Baixe o FlightGear gratuitamente: Guia de Instalação Oficial

Baixe o FlightGear gratuitamente: Guia de Instalação Oficial

Baixe o FlightGear gratuitamente no site oficial. Compare os pacotes para Windows, macOS e Linux, instale os arquivos de dados e inicie seu primeiro voo.

Aplicativo Google Tasks para desktop: como usá-lo no computador

Aplicativo Google Tasks para desktop: como usá-lo no computador

Abra o Google Tasks em um navegador, adicione um atalho do Chrome ou inicie o aplicativo automaticamente e gerencie suas tarefas agendadas pelo Agenda e pelo Gmail.

OKSampler: Um sampler de música gratuito e simples para batidas de teclado.

OKSampler: Um sampler de música gratuito e simples para batidas de teclado.

O OKSampler mapeia trechos de MP3 para teclas do teclado e pode reproduzir áudio em loop. Saiba o que este software gratuito legado faz, onde terminam suas funcionalidades antigas e o que verificar antes de baixar.