Introdução
Neste projeto, você aprenderá como criar e gerenciar contas de usuário para professores e alunos em um ambiente de servidor de sala de aula. Você usará um script bash chamado userctr.sh para automatizar o processo de adição e exclusão de contas de usuário, o que pode ser uma tarefa tediosa quando feita manualmente.
👀 Visualização
## Adicionar 1 usuário professor e 6 usuários alunos (stu1 a stu6)
$ sh userctr.sh add teacher stu 6
teacher:617533
stu1:345893
stu2:183263
stu3:404525
stu4:571165
stu5:251940
stu6:716130
## Excluir 1 usuário professor e 6 usuários alunos (stu1 a stu6)
$ sh userctr.sh del teacher stu 6
🎯 Tarefas
Neste projeto, você aprenderá:
- Como configurar o ambiente necessário para o projeto
- Como implementar funções para adicionar e excluir usuários e grupos
- Como testar o script
userctr.shpara garantir que ele funcione conforme o esperado
🏆 Conquistas
Após concluir este projeto, você será capaz de:
- Compreender a importância de automatizar tarefas de gerenciamento de usuários
- Criar e gerenciar contas de usuário para professores e alunos usando um script bash
- Garantir que as contas de usuário sejam criadas com as configurações apropriadas, como shell padrão e privilégios sudo
- Adicionar e excluir contas de usuário de forma eficiente em um ambiente de servidor de sala de aula
Preparar o Ambiente
Nesta etapa, você configurará o ambiente necessário para o projeto.
Abra um terminal e navegue até o diretório
/home/labex/project.Crie um novo arquivo chamado
userctr.shno diretório/home/labex/projectusando o seguinte comando:touch userctr.shAbra o arquivo
userctr.shem um editor de texto e adicione a seguinte linha shebang no início do arquivo:#!/bin/zshEsta linha especifica que o script deve ser executado usando o shell zsh.
Implementar as Funções de Gerenciamento de Usuários e Grupos
Nesta etapa, você implementará as funções para adicionar e excluir usuários e grupos.
Adicione o seguinte código ao arquivo
userctr.sh:## Este script é usado para gerenciar contas de usuário para professores e alunos. ## Verificar se o número de parâmetros está correto if [ $## -ne 4 ]; then echo "Erro de parâmetro" exit 1 fi ## Verificar se o parâmetro de contagem de alunos é um inteiro positivo e não excede 10 if ! [[ "$4" =~ ^[1-9][0-9]?$|^10$ ]]; then echo "Erro de parâmetro" exit 1 fi ## Verificar se o prefixo do nome do aluno contém apenas letras minúsculas if ! [[ "$3" =~ ^[a-z]+$ ]]; then echo "Erro de parâmetro" exit 1 fi ## Função para gerar uma senha aleatória de 6 dígitos generate_password() { password=$(shuf -i 100000-999999 -n 1) echo "$password" }Este código configura a estrutura básica do script, incluindo a validação de parâmetros e uma função para gerar senhas aleatórias.
Adicione o seguinte código ao arquivo
userctr.shpara lidar com a operação "add":## Adicionar usuários ## Adicionar usuário professor ## Adicionar usuários alunosEste código adiciona um usuário professor e o número especificado de usuários alunos. Se um usuário já existir, ele exibirá a senha do usuário como seis asteriscos.
Adicione o seguinte código ao arquivo
userctr.shpara lidar com a operação "del":## Excluir usuários ## Excluir usuário professor ## Excluir usuários alunosEste código exclui o usuário professor e o número especificado de usuários alunos.
Salve o arquivo
userctr.sh
Testar o Script
Nesta etapa, você testará o script userctr.sh para garantir que ele funcione conforme o esperado.
Abra um terminal e navegue até o diretório
/home/labex/project.Teste a operação "add" executando o seguinte comando:
sh userctr.sh add teacher stu 6Isso deve criar um usuário professor e seis usuários alunos, e exibir suas senhas geradas aleatoriamente.
teacher:617533 stu1:345893 stu2:183263 stu3:404525 stu4:571165 stu5:251940 stu6:716130Teste a operação "del" executando o seguinte comando:
sh userctr.sh del teacher stu 6Isso deve excluir o usuário professor e os seis usuários alunos.
Parabéns! Você concluiu o projeto. Agora você pode usar o script userctr.sh para gerenciar contas de usuário para professores e alunos em seus servidores de sala de aula.
Resumo
Parabéns! Você concluiu este projeto. Você pode praticar mais laboratórios no LabEx para aprimorar suas habilidades.



