Português do Brasil English
Devin no Facebook  Devin no Twitter  RSS do Site 
Linux    

Manipulação de Usuários


Comentários  8
Visualizações  
27,649

Como adicionar ou remover usuários no Linux, entendendo como funciona tudo.

Como você já deve saber, o Linux é um sistema multi-usuário, então, é claro que não só pode existir um usuário usando o sistema. Uma primeira coisa que possamos dizer é que o Linux não pode de alguma maneira ser usada sem estar sendo um usuário. O usuário ‘root’ é o administrador do sistema, e é ele quem você vai usar primeiro para criar outros usuários depois (a não ser que você tenha criado um usuário comum durante a instalação do seu Linux).

Antes de mais nada, fique sabendo que o root é um usuário especial, ele pode fazer TUDO em seu sistema, não importa o que acontecer, ele faz. Ao contrário dos usuários comuns, que têm restrições. Se você já instalou algum Linux, você verá que a primeira coisa que você irá fazer antes de usar o sistema é se logar como root, ou seja, preencher aquele campo login: com o usuário root. Mas aí por alguma razão você quer mudar de usuário, ou criar outro, ou qualquer coisa do tipo, então você se pergunta: “Como?”

Há um comando específico para isto. Este comando é o “adduser” ou “useradd”. Dependendo da distribuição, o comando “adduser” vai ser apenas um comando igual ao “useradd”, ou então um script interativo que irá lhe fazendo perguntas, você irá preenchendo, e então o script criará um usuário no sistema para você.

No caso do “adduser” ser um comando mesmo, você poderá utilizar assim:

adduser hugo
passwd hugo

Isso respectivamente irá criar um usuário padrão chamado hugo, e depois com o comando “passwd”, você definirá uma senha para este usuário. Você pode especificar outros parâmetros para o usuário, como no comando a seguir:

adduser hugo -d /var/usuarios/hugo -s /dev/null

Com estes parâmetros, especifiquei que o usuário hugo terá como diretório home o “/var/usuarios/hugo” e como shell o “/dev/null” (ou seja, não terá shell). Sem estes parâmetros, o diretório home seria “/home/hugo” e o shell seria “/bin/bash”.

Vamos entender agora como este comando funciona, que é uma coisa essencial que todos deveriam saber em relação ao sistema Linux. Cada um desses programas escrevem o usuário no arquivo de configuração do Linux referente aos usuários do sistema. Este arquivo é o “/etc/passwd”. Cada linha deste arquivo é um usuário cadastrado no sistema. Com as informações que vou lhe dar aqui, você pode muito bem criar uma conta sem usar estes programas/scripts citados acima.

O passwd é formado por linhas onde cada linha é um usuário, como falei acima, então vamos aprender a montar cada linha desta. Vou pegar um exemplo para vocês:

hugo:x:1001:100:Hugo Cisneiros:/home/hugo:/bin/bash

Vamos dividir esta linha em “campos”, onde cada um é separado por : (dois pontos), olhe só:

CampoSignificado
hugoLogin do Usuário, aqui você pode colocar o nome que quiser com até 8 caracteres.
xAqui diz que o password está no arquivo /etc/shadow. Se estivesse *, a conta estaria desabilitada, e se estivesse sem nada (::), a conta não teria password.
1001UID (User IDentification), o número de identificação do usuário.
100GID (Group IDentification), o número de identificação do grupo do usuário.
Hugo CisneirosComentários do usuário, como nome, telefone, etc
/home/hugoO diretório HOME do usuário.
/bin/bashShell do usuário, ou seja, o programa que irá enterpretar os comandos que o usuário executar.

Obs: O /etc/shadow é um arquivo que contém a senha do usuário criptografada, se alguém tiver posse dela, esta pessoa pode muito bem comparar as senhas com uma lista de palavras, e pode descobrir as senhas dos usuários. Felizmente este arquivo está muito bem protegido pelo sistema :)

Bem, legal, aprendi sobre adicionar um usuário, mas como faço para removê-lo? Simples, você pode apagar a linha referente a ele no /etc/passwd e os seus arquivos, ou simplesmente digitar userdel usuario. Combine com a opção -r para deletar junto o diretório HOME do usuário.

Ahhhhh? Você quer mais? O quê? Quer deixar um usuário como se fosse root? Então vamos lá que não temos nada a perder! O root possui o UID e o GID igual à 0 (zero), e um usuário comum não. Se nós forçássemos a mudança do UID e GID de um usuário para 0, ele ficaria como se fosse o root! Por exemplo, eu tenho a linha do usuário no /etc/passwd e mudo:

hugo:x:1001:100:Hugo Cisneiros:/home/hugo:/bin/bash
hugo:x:0:0:Hugo Cisneiros:/home/hugo:/bin/bash
       ^ ^

Pronto, o usuário hugo vai ser também o root do sistema, o administrador do sistema, o deus do sistema, etc. Outra dica: Não é muito bom ficar usando o usuário root, este usuário é somente para a administração do sistema, então eu recomendo à você a usar sempre um usuário normal, ser da plebe :) E se for precisar usar o root, logar como ele ou utilizar o comando “su -” para se tornar o próprio root.

Outro arquivo que tem muito haver com os usuários no Linux é o /etc/group. Que contém as definições de cada grupo, como por exemplo seus nomes, GIDs, e usuários adicionais que pertencem à ele. Você adicionando uma linha neste arquivo estará criando um novo grupo. Vamos criar aqui um novo grupo no /etc/group:

metal:x:666:hugo,jim,eitch

Adicionando esta linha acima no arquivo /etc/group, um novo grupo é criado: com o nome ‘metal’, o GID ’666′ e como usuários adicionais pertencentes à ele, ‘hugo, jim, eitch’. Fácil não?

Bem é isso, combinando este conhecimento com algo sobre permissões dos arquivos, você pode controlar muito bem quem usa o seu sistema ou servidor, dizendo quem pertence à que grupo, quais seus diretórios, que arquivos podem acessar, entre outros. Bom proveito!


Comentários  8
Visualizações  
27,649


TagsLeia também

Apaixonado por Linux e administração de sistemas. Viciado em Internet, servidores, e em passar conhecimento. Idealizador do Devin, tem como meta aprender e ensinar muito Linux, o que ele vem fazendo desde 1997 :-)


Leia também



Comentários

8 respostas para “Manipulação de Usuários”

  1. Otto disse:

    Interessante. Valeu.

  2. Leo disse:

    Muito interessante a abordagem, nota 10, valeu.

  3. Oliver disse:

    Uma linguagem bastante simples, o que torna o aprendizado fácil e eficiente.

    PARABéNS!

  4. Andre disse:

    Hugo, e quando a pessoa faz o login no samba, em uma maquina winxp, e fica uma janela quando entra dizendo erro no arquivo *.pwl, em alguns usuarios. O que pode ser isso?

  5. Excelente artigo. Bem direto, fácil e detalhado. Parabéns!

  6. Guilherme Fraga disse:

    excelente, me ajudou muito no trabalho aqui.

  7. marcelo disse:

    hugo, eu sumi com meu root, abri aquele arquivo "passwd" e o usuario root tá lá, mas nao consio logar nele, quando eu ligo o pc e cai naquela tela onde você escolhe qual usuario quer entrar ele nem aparece…

    pelo que eu vi no seu tutorial é só zerar o "uid" e o "gid", mas como eu faço isso? sendo que nao consigo editar nenhum arquivo root, tentei mudar o "passwd" mas diz isso:

    "o documento nao pode ser salvo, pois não foi possível gravar em

    /etc/passwd.

    verifique se você possuí acesso de escrita para este arquivo ou se existe espaço em disco disponível.

    por favor me ajude.

    nota: eu tenho um notebook linux mandriva (2010 acho)

Deixe uma resposta