Criação e Exclusão em Lote de Usuários e Grupos

LinuxBeginner
Pratique Agora

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.sh para 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.

  1. Abra um terminal e navegue até o diretório /home/labex/project.

  2. Crie um novo arquivo chamado userctr.sh no diretório /home/labex/project usando o seguinte comando:

    touch userctr.sh
    
  3. Abra o arquivo userctr.sh em um editor de texto e adicione a seguinte linha shebang no início do arquivo:

    #!/bin/zsh
    

    Esta 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.

  1. 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.

  2. Adicione o seguinte código ao arquivo userctr.sh para lidar com a operação "add":

    ## Adicionar usuários
    ## Adicionar usuário professor
    
    ## Adicionar usuários alunos
    

    Este 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.

  3. Adicione o seguinte código ao arquivo userctr.sh para lidar com a operação "del":

    ## Excluir usuários
    ## Excluir usuário professor
    
    ## Excluir usuários alunos
    

    Este código exclui o usuário professor e o número especificado de usuários alunos.

  4. Salve o arquivo userctr.sh

Testar o Script

Nesta etapa, você testará o script userctr.sh para garantir que ele funcione conforme o esperado.

  1. Abra um terminal e navegue até o diretório /home/labex/project.

  2. Teste a operação "add" executando o seguinte comando:

    sh userctr.sh add teacher stu 6
    

    Isso 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:716130
    
  3. Teste a operação "del" executando o seguinte comando:

    sh userctr.sh del teacher stu 6
    

    Isso 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.

✨ Verificar Solução e Praticar✨ Verificar Solução e Praticar✨ Verificar Solução e Praticar