Terminal Linux – Encontrar utilizadores em Linux

Por: André Paula
Tempo de leitura: 3 min

Existem pelo menos dois tipos de utilizadores: o utilizador padrão e de sistema. Normalmente, o utilizador padrão tem pasta home e acesso ao shell bash, enquanto um utilizador de sistema, regra geral, não tem acesso ao shell bash.
Para conseguirem identificar quais os utilizadores criados e o seu respetivo UID (User Identifier), basta ler a informação que está no /etc/passwd, através do comando cat, é aqui que é guardada essa informação.

Vamos agora dar alguns exemplos:

1 – listar todo o conteúdo do /etc/passwd

  • cat /etc/passwd

No resultado acima, foi listada toda a informação, mas cada campo é separado por ( : ) e vamos explicar dada um:

  • 1 – Utilizador: É o nome do utilizador em sistema
  • 2 – X: É referente à password que está encriptada e guardada no ficheiro /etc/shadow.
  • 3 – UID do utilizador– No caso do utilizador root, por padrão é 0 e no caso dos utilizadores com acesso ao bash, começa com 1000, como é o caso do linuxtech.
  • 4 – UID do grupo: Por padrão o nome do grupo é igual ao utilizador
  • 5 – Informação do utilizador: colocar o nome, numero de telefone, morada etc
  • 6 – Diretório home: /home/linuxtech
  • 7 – shell: Normalmente é o caminho do shell, neste caso bash, mas não é obrigatório ser, no entanto é neste ultimo campo que é definido qual o shell ou comando

Se tiverem em mente estes 7 campos que estão no passwd, já será possível procurar os campos específicos numa pesquisa, adicionando alguns comandos como o cut, wc, grep.

Mais exemplos:

2 – Listar apenas os utilizadores com pasta home criada:

cat /etc/passwd | grep ‘/home’

cat – Lista a informação do passwd
grep – procura no ficheiro o que foi colocado entre ‘’

3 – Listar apenas os utilizadores com login em bash

  • cat /etc/passwd | grep bash

 

4 – Listar utilizadores em sistema com o UID a iniciar nos 100 e colocar a informação num ficheiro na pasta documentos.

  • cat /etc/passwd | grep 100* | cut -d: -f1,3 > ~/Documentos/users_100.txt

cut -d (delimita a pesquisa)

cut -f (qual o campo a apresentar)

 

5 – Quantos utilizadores em sistema têm pasta home criada

  • cat /etc/passwd | grep /home | wc -l

WC (Word count) – Vai contar o numero de palavras, linhas do ficheiro indicado

6 – Quantos utilizadores em sistema criados

  • cat /etc/passwd | cut -d: -f1 | wc -l

Espero que tenham gostado deste guia. Alguma duvida ou melhoria ao que foi escrito, deixem nos comentários!

Seguir:
Estar sempre actualizado com as novidades tecnológicas é para mim importante, em especial com tudo o que esteja relacionado com open source, linux e software livre, por isso tenho um podcast e escrevo sobre estes temas.
Exit mobile version