Os usuários do Linux

Este é um artigo simples onde tento mostrar como o Linux trabalha com usuários e grupos, visto que essa é uma dúvida bem comum dentre as pessoas que costumam aparecer no canal de IRC #Vivaolinux.

[ Hits: 106.189 ]

Por: Luiz Antonio da Silva Junior em 31/10/2003


Como funciona o /etc/passwd?



As principais informações sobre todos os usuários em uma máquina Linux são armazenadas no arquivo /etc/passwd. Vejamos um exemplo desse arquivo:

root:elEjdRjdkoFpef:0:0:root:/root:/bin/bash
bin:*:1:1:bin:/bin:
daemon:*:2:2:daemon:/sbin:
lp:*:4:7:lp:/var/spool/lpd:
adm:*:4:adm:/var/adm:
mail:*:8:12:mail:/var/spool/mail:
sync:*:5:0:sync:/sbin:/bin/sync
news:*:9:13:new:/var/spool/news:
uucp:*:10:14:uucp:/var/spool/uucp:
gopher:*14:31:gopher:/usr/lib/gopher-data:
ftp:*:13:30:FTP User:/home/ftp:
nobody:*:99:99:Nobody:/:
xfs:*:100:101:X Font Server:/etc/X11/fs:/bin/false
juniox:4fT3cjM3zieSd:500:100:JuNiOx:/home/juniox:/bin/bash

Cada linha desse arquivo é o registro de um usuário da máquina. Por exemplo, vamos verificar a linha contendo informações do juniox (última linha).

juniox:4fT3cjM3zieSd:500:100:JuNiOx:/home/juniox:/bin/bash

Verifique que essa linha contém vários campos separados por dois pontos (:). Vamos estudar um por um.
  • juniox - nome do usuário na máquina, deve ser único;
  • 4fT3cjM3zieSd - a senha criptografada;
  • 500 - número de identificação do usuário (assim como o nome do usuário, deve ser único, ou seja, não pode haver repetições). O sistema operacional usa esse número para manter os registros dos arquivos que "juniox" possui ou pode acessar;
  • 100 - número de identificação do grupo do usuário. Similar ao número do usuário, porém identifica o grupo, que pode conter vários usuários com as mesmas características de permissão e acesso. (mais detalhado no próximo ítem);
  • JuNiOx - é o comentário sobre o usuário. Pode ser qualquer string, mas geralmente usa-se colocar o nome próprio da pessoa;
  • /home/juniox - diretório base do usuário. É nesse diretório onde o usuário pode armazenar arquivos pessoais. Após conectado ao sistema operacional, o usuário chegará a esse diretório;
  • /bin/bash - shell padrão. É esse o programa que aceitará e executará os comandos digitados pelo usuário.
Simples de entender, não?

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Como funciona o /etc/passwd?
   3. Tipos de usuários
   4. Grupos
Outros artigos deste autor

Instalando e Configurando o JAVA

O ? Alternativo em C/C++

Explorando NFS mal configurado

#Vivaolinux, agora com canal IRC

Os Vírus e o Linux

Leitura recomendada

Ubuntu ou Debian com KDE Plasma

A profissão: Programador

Passo-a-passo para instalar o CentOS Linux 5.2

Usa Firefox? Expanda-o

Lógica para computação - parte IV

  
Comentários
[1] Comentário enviado por elm em 31/10/2003 - 07:19h

Uma opção interessante que pode ser utilizada é a criação de um usuário sem que seja permitido seu login no sistema via ssh/telnet.
Para isso é só modificar sua shell para /bin/false, como no exemplo:

xfs:*:100:101:X Font Server:/etc/X11/fs:/bin/false

Isso é bastante usado em provedores onde uma conta de usuário pode ser utilizada para leitura de e-mails,por exemplo, mas não é interessante que ela possa fazer o login no sistema.

[2] Comentário enviado por mrluk em 11/11/2003 - 10:01h

para essa função ser mais eficaz, podemos tb, criar o arquivo /etc/nologin , curto, grosso e vazio! hehe

Este arquivo estando no /etc impede que qualquer usuário (com excessão do root) faça login no sistema, inclusive remotamente! Muito util para servidores!

;o)

Um grande abraço,

MrLuk

[3] Comentário enviado por mrluk em 11/11/2003 - 10:05h

para essa função ser mais eficaz, podemos tb, criar o arquivo /etc/nologin , curto, grosso e vazio! hehe

Este arquivo estando no /etc impede que qualquer usuário (com excessão do root) faça login no sistema, inclusive remotamente! Muito util para servidores!

;o)

Um grande abraço,

MrLuk

[4] Comentário enviado por fb em 08/06/2004 - 18:11h


Valeria comentar o shadow.

[5] Comentário enviado por Trebolle em 23/11/2017 - 10:58h

Bom dia amigos
Prezados, podem tirar uma dúvida para mim?
Quando eu entro como root e digito cd /etc/passwd estou obtendo como resposta "Permission denied"
Porém, se eu entrar no diretorio /etc e digitar cat passwd, aí sim me mostra todas as informações.
Já tentei com outro usuário e não consigo. Sabe porque desta mensagem Permission denied?
Obrigado


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts