Introdução
Linux é um sistema operacional multiusuário onde múltiplos usuários podem trabalhar simultaneamente. Entender como navegar entre diferentes contas de usuário é uma habilidade fundamental para administradores de sistema e usuários Linux. Este laboratório apresenta a troca de usuários no Linux usando o comando su (substitute user).
Neste laboratório, você aprenderá como criar um novo usuário, alternar entre usuários, realizar operações como diferentes usuários e retornar à sua conta de usuário original. Essas habilidades são essenciais para tarefas de administração de sistema, práticas de segurança e compreensão das permissões de usuário em ambientes Linux.
Entendendo Usuários Linux e Criando um Novo Usuário
No Linux, cada usuário tem sua própria conta com permissões específicas e diretório home. Antes de podermos alternar entre usuários, precisamos criar uma segunda conta de usuário.
Criando um Novo Usuário
Vamos criar um novo usuário chamado apprentice usando o comando adduser. Este comando requer privilégios administrativos, então usaremos sudo para executá-lo com permissões elevadas:
sudo adduser apprentice
Quando você executar este comando, será solicitado que defina uma senha para o novo usuário e forneça algumas informações opcionais. Para este laboratório, vamos definir a senha como password123 e você pode pressionar Enter para pular os campos de informações opcionais:
Adding user `apprentice' ...
Adding new group `apprentice' (1001) ...
Adding new user `apprentice' (1001) with group `apprentice' ...
Creating home directory `/home/apprentice' ...
Copying files from `/etc/skel' ...
New password: password123
Retype new password: password123
passwd: password updated successfully
Changing the user information for apprentice
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [Y/n] Y
Concedendo Privilégios Sudo
Agora, vamos dar ao usuário apprentice privilégios sudo para que ele possa realizar tarefas administrativas:
sudo usermod -aG sudo apprentice
Este comando adiciona o usuário apprentice ao grupo sudo. Não haverá nenhuma saída se o comando for executado com sucesso.
Verificando a Existência do Usuário
Para verificar se nosso novo usuário foi criado com sucesso, podemos listar o conteúdo do diretório /home:
ls -l /home
Você deve ver um diretório para o usuário apprentice:
total 8
drwxr-xr-x 5 apprentice apprentice 4096 Oct 15 12:34 apprentice
drwxr-xr-x 5 labex labex 4096 Oct 15 12:00 labex
Também podemos verificar a lista de usuários no sistema visualizando o arquivo /etc/passwd:
grep apprentice /etc/passwd
Isso deve mostrar informações sobre o usuário apprentice:
apprentice:x:1001:1001:,,,:/home/apprentice:/bin/bash
Alternando Usuários com o Comando su
Agora que criamos o usuário apprentice, vamos aprender como alternar para este usuário usando o comando su.
Entendendo o Comando su
O comando su (substitute user) permite que você alterne para outra conta de usuário durante uma sessão de login. Existem duas maneiras comuns de usar o comando su:
su username- Alterna para o usuário especificado, mas mantém as variáveis de ambiente atuaissu - username- Alterna para o usuário especificado e também carrega o ambiente desse usuário
Usar a segunda opção com o hífen (-) é geralmente preferível, pois fornece uma troca completa de ambiente, fazendo com que pareça que você está realmente logado como aquele usuário.
Alternando para o Usuário Apprentice
Vamos alternar para o usuário apprentice com uma troca completa de ambiente:
su - apprentice
Você será solicitado a inserir a senha do usuário apprentice. Digite a senha que você definiu durante a criação do usuário (password123):
Password: password123
Após a autenticação bem-sucedida, o seu prompt de comando mudará para indicar que você está agora logado como o usuário apprentice. O prompt pode ter uma aparência semelhante a esta:
apprentice@ubuntu:~$
Verificando a Troca de Usuário
Para confirmar que você está agora operando como o usuário apprentice, execute o comando whoami:
whoami
A saída deve ser:
apprentice
Você também pode verificar o diretório de trabalho atual com o comando pwd:
pwd
A saída deve mostrar que você está no diretório home do usuário apprentice:
/home/apprentice
Criando Arquivos como o Usuário Aprendiz
Agora que estamos logados como o usuário apprentice, vamos criar alguns arquivos para demonstrar que as ações realizadas nesta sessão são executadas com as permissões do usuário apprentice.
Criando um Diretório
Primeiro, vamos criar um diretório de projeto no diretório home do usuário apprentice:
mkdir -p ~/project
A flag -p garante que o comando não produza um erro se o diretório já existir. Não haverá nenhuma saída se o comando for executado com sucesso.
Criando um Arquivo de Texto
Agora, vamos criar um arquivo de texto no diretório do projeto:
echo "This is my first file as the apprentice user." > ~/project/apprentice-journal.txt
Não haverá nenhuma saída ao executar este comando, mas ele criará um arquivo com o conteúdo especificado.
Visualizando o Conteúdo do Arquivo
Vamos verificar o conteúdo do arquivo que acabamos de criar:
cat ~/project/apprentice-journal.txt
A saída deve ser:
This is my first file as the apprentice user.
Verificando a Propriedade do Arquivo
Também podemos verificar se o arquivo pertence ao usuário apprentice:
ls -l ~/project/apprentice-journal.txt
A saída deve ser semelhante a esta:
-rw-rw-r-- 1 apprentice apprentice 44 Oct 15 13:45 /home/apprentice/project/apprentice-journal.txt
Observe que tanto o usuário quanto o grupo proprietário do arquivo estão definidos como apprentice, confirmando que o arquivo foi criado com as permissões do usuário apprentice.
Retornando ao Seu Usuário Original
Após concluir as tarefas como o usuário apprentice, é hora de voltar para sua conta de usuário original. Esta é uma prática comum quando você precisa temporariamente realizar ações como outro usuário e, em seguida, retornar à sua conta principal.
Saindo da Sessão do Usuário Apprentice
Para retornar à sua sessão de usuário original, simplesmente digite exit ou pressione Ctrl+D:
exit
Você deve ver o prompt de comando mudar de volta para o seu prompt de usuário original, que pode ter uma aparência semelhante a:
labex@ubuntu:~/project$
Verificando a Troca de Usuário
Para confirmar que você voltou com sucesso para sua conta de usuário original, execute o comando whoami:
whoami
A saída deve ser:
labex
Acessando Arquivos Criados por Outros Usuários
Mesmo que você tenha voltado para seu usuário original, você ainda pode acessar arquivos criados pelo usuário apprentice se tiver as permissões apropriadas:
sudo cat /home/apprentice/project/apprentice-journal.txt
A saída deve mostrar o conteúdo do arquivo:
This is my first file as the apprentice user.
Comparando o Contexto do Usuário
Agora que você experimentou a troca entre usuários, vamos demonstrar a diferença no contexto do usuário verificando os caminhos do diretório home:
echo "My home directory is: $HOME"
A saída deve mostrar o diretório home do seu usuário original:
My home directory is: /home/labex
Se você voltasse para o usuário apprentice e executasse o mesmo comando, a saída seria diferente:
su - apprentice ## (Não execute isso agora, apenas para ilustração)
echo "My home directory is: $HOME" ## Mostraria: My home directory is: /home/apprentice
Isso demonstra como o comando su com a opção - troca completamente o ambiente do usuário, incluindo variáveis de ambiente como $HOME.
Resumo
Neste laboratório, você aprendeu habilidades essenciais de gerenciamento de usuários Linux:
- Criar uma nova conta de usuário com o comando
adduser - Conceder privilégios sudo a um usuário com o comando
usermod - Alternar entre usuários usando o comando
su - Criar arquivos como um usuário diferente
- Verificar o contexto do usuário com comandos como
whoamie verificar variáveis de ambiente - Voltar para seu usuário original com o comando
exit
Essas habilidades são fundamentais para a administração de sistemas Linux e operações diárias em ambientes multiusuário. A troca de usuários permite que os administradores realizem tarefas com diferentes níveis de permissão e mantenham práticas de segurança adequadas, evitando o uso constante da conta root.
Compreender o gerenciamento de usuários no Linux ajuda você a:
- Manter a segurança do sistema usando as permissões de usuário apropriadas
- Solucionar problemas relacionados a permissões
- Testar aplicativos e configurações de diferentes perspectivas de usuário
- Gerenciar sistemas multiusuário de forma eficaz
À medida que você continua sua jornada no Linux, essas habilidades servirão como base para tarefas de administração de sistema mais avançadas.



