Listar contas de usuários no Mac a partir da linha de comando

Índice:

Anonim

Administradores de Mac podem se encontrar em uma situação em que precisam exibir uma lista de todas as contas de usuário em um determinado Mac por meio da linha de comando. Analisaremos alguns métodos para indivíduos avançados listarem todas as contas, tanto do usuário quanto do sistema, em qualquer Mac com qualquer versão do software do sistema Mac OS X.

Algumas abordagens básicas preliminares para isso seriam acessar a tela de login ou listar o conteúdo do diretório /Users, embora se uma conta de usuário estiver oculta, ela não será exibida na tela de login e é igualmente simples ofuscar um usuário da pasta /Users.Além disso, a existência de um nome no diretório /Users/ não é infalível, porque você pode excluir uma conta de usuário, mas preservar o diretório inicial desse usuário. Como resultado, embora essas abordagens possam ser apropriadas para o usuário casual de Mac que deseja mostrar quais usuários eles têm em um computador, nenhum desses métodos é particularmente suficiente para a maioria das necessidades administrativas. Mas, ao acessar a linha de comando, você pode revelar todas as contas de usuário em um Mac, sejam elas contas gerais de usuários ativos, contas de administrador, bem como qualquer conta do sistema.

Como listar todas as contas de usuário em um Mac a partir da linha de comando

Abra o Terminal se ainda não o fez, seja na máquina local para a qual deseja listar as contas de usuário ou conectando-se a um Mac remoto no qual gostaria de ver as contas de usuário . Em seguida, usaremos o comando 'dscl', que funciona em todas as versões do software do sistema Mac OS X.

Ver todos os usuários e contas em um Mac

dscl . list /Users

O benefício (ou problema) dessa abordagem é que ela lista não apenas todas as contas de usuário em um Mac, mas também mostra cada daemon e conta de processo do servidor. Isso incluiria nomes de usuário como Paul, Bob, Jill, mas também daemons, contas do sistema e usuários de processo como networkd, windowserver, daemon, nobody, root, _spotlight, _ard, _appserver, _iconservices e muitos mais.

Se a lista completa de usuários for indesejável, você pode excluir facilmente todos os _underscore daemon e processar contas executando a saída por meio do grep, como mostraremos a seguir.

Mostrar apenas contas de usuário

dscl . lista /Usuários | grep -v '_'

Este comando irá filtrar qualquer um dos _ usuários daemon com prefixo sublinhado, que não são realmente contas de usuário. Você obterá uma lista muito menor de nomes de usuário retornada como resultado, mas ainda encontrará três nomes de usuário incluídos que não são contas de usuário típicas, mas são normais de serem encontrados em instalações do Mac OS X; daemon, ninguém e root.

Mostrar todas as contas de usuário, diretórios de usuários e informações GECOS do usuário em um Mac

Outra abordagem seria mostrar e listar uma lista detalhada de contas de usuários, o diretório de contas de usuários associadas e as informações GECOS da conta de usuário (que geralmente é uma descrição da conta ou um nome de usuário completo ). Se você está se perguntando o que diabos são algumas das contas do sistema e contas de ID do usuário do processo nas listas mencionadas, esta abordagem oferece mais detalhes, incluindo a descrição gecos para cada conta (por exemplo, _qtss user é o daemon do QuickTime Streaming Server)

dscacheutil -q user

A saída desse comando será bastante extensa, então você pode querer canalizar o resultado através de mais ou menos ou redirecioná-lo para um arquivo de texto para facilitar a análise.

Provavelmente existem outros meios de exibir todas as contas de usuário em um Mac, independentemente da versão do sistema. Se você souber de um método informativo eficaz não abordado aqui, compartilhe-o nos comentários.

Listar contas de usuários no Mac a partir da linha de comando