Usuários no Linux e UNIX

Listar usuários logados no Linux ou Unix

Em ambos os casos, tanto para Linux ou para UNIX você possui uma infinidade de maneiras para verificar os usuário logados no Linux ou Unix. Os comandos mais comuns são: "who", ""w" e "users".

Segue abaixo os exemplos:

$ w
00:19:23 up 261 days, 6:58, 2 users, load average: 0.00, 0.00, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
oracle tty1 - 02May09 261days 0.01s 0.01s –bash
oracle pts/0 121.0.60.43 00:19 0.00s 0.01s 0.00s w

$ who
oracle tty1 2009-05-02 19:43
oracle pts/0 2010-01-19 00:19 (121.0.60.43

$ users
oracle oracle


 

Verificando quais usuarios em possuo no Linux / Unix

Para verificar quais os usuários você possui em seu ambiente Linux ou Unix, você deve consultar o arquivo /etc/password.

O arquivo de texto /etc/password contêm o nome e outras informações sobre os usuários do Linux e Unix, trazendo em cada linha informações como ID do usuário, grupo, diretório inicial (diretório home), tipo de Shell, etc. Esses campos são separados pelo símbolo: contendo 7 campos.

Segue um exemplo com os descritivos dos campos:

Username:password:UID:GID:Info Usuario:Diretorio Home:Shell

Sendo:
Username: Cadeia de caracteres com 32 posições, contendo o nome do usuário, esse nome é sempre único em um ambiente.

Password: Contem na maioria das vezes um caractere apenas "x", indicando que sua senha está criptografada em /etc/shadow.

UID: É o ID do usuário, identificação única no sistema

GID: Identificação do grupo do usuário. Os nomes dos grupos são armazenados em /etc/groups.

Info Usuario: Esse campo serve para informações adicionais, como nome completo, RG, ramal do usuário, etc.

Diretorio Home: Armazena o diretório padrão do usuário. Ao conectar-se com o usuário, ele ira até o caminho especificado. Caso o usuário não entre na pasta especifica, significa que o caminho path do usuário foi alterado pelos arquivos de inicialização.

Shell: Será o caminho (path) do tipo de linha de comando utilizado. Por padrão é /Bin/bash

Segue abaixo a saída exemplo de um arquivo de usuários:

$ more /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
news:x:9:13:news:/etc/news:
uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
oracle:x:501:501::/opt/oracle:/bin/bash

Você pode usar os comandos "cut" e "grep" para poder eliminar colunas desnecessárias e fazer um filtro no arquivo respectivamente.

Segue abaixo o exemplo de cada um deles:

Mostrando apenas os nomes dos usuários:

$ more /etc/passwd | cut –d: -f1 

Mostrando os diretórios padrões de cada usuarios:

$ more /etc/passwd | cut –d: -f6 

Mostrando a descrição do usuario:

$ more /etc/passwd | cut –d: -f5 

Filtando por usuário:

$ grep oracle /etc/passwd

Filtando por usuário:

$ more /etc/passwd | grep oracle

Esse daqui e a ponta do iceberg para uma administracao de usuarios no Linux, mas já e suficiente para fazermos atividades simples, como verificar se um usuario esta ou não no SO, verificar onde e o path default entre outras informações.
Obrigado pela visita, e ate a próxima.

Comentários

Postagens mais visitadas deste blog

ORACLE: Remoção dos agendamentos do Statspack

Diminuir arquivo de Transaction-log (LDF) do SQL Server nas versões 2000 e 2005