Livro de VisitasMapaContactoLigações
 
 
   Você está aqui: Livre > Servidor > Funções e Operações Técnicas  
 
 
 

Operações técnicas Funções e Operações Técnicas

Servidor - Sistema CentOS

Criar automaticamente os utilizadores e recursos das turmas
Operações Técnicas >>


1. Características da solução proposta

Após a instalação e configuração básica do servidor, há todo o interesse em criar e posteriormente gerir, de forma tão automatizada quanto possível, os utilizadores da rede local, bem como os recursos de rede associados e necessários às funções lectivas e de realização de provas de avaliação.

Numa escola, existem utilizadores de vários tipos, sendo de considerar, pelo menos, os alunos, professores e funcionários (os auxiliares de acção educativa e os administrativos).

 

Será necessário conceber uma lógica de definição dos nomes de utilizador, bem como definir os recursos de rede presentes no servidor com vista a fornecer, de forma devidamente estruturada, os serviços de interesse.

 

Cada utilizador acederá ao sistema iniciando sessão em qualquer posto de trabalho, introduzindo o seu nome de utilizador e a sua senha. Esta deverá ser suficientemente robusta, sendo especialmente de proteger as contas de utilizador dos professores, que vulgarmente poderão possuir nas suas pastas pessoais enunciados de provas de avaliação e outras informações sensíveis, que não deverão ficar demasiado vulneráveis ao permitir-se aos utilizadores, como convém, o acesso remoto pelo protocolo SSH. Uma boa forma de gerar senhas robustas e ao mesmo tempo fáceis de ficar é utilizar o gerador de senhas presente nesta página. Para tal, geram-se grupos de até 99 senhas de cada vez e copiam-se estas.

Os utilizadores podem iniciar sessão em qualquer posto de trabalho, encontrando sempre a sua pasta pessoal, que está localizada no servidor.

 

O que se apresenta em seguida são as características de uma possível solução, bem como a forma de a colocar em prática.
  • Os nomes de utilizador são atribuídos de forma impessoal e sistemática, o que muito facilita e reduz a necessidadde quotidiana de acções de gestão e em particular se presta bem à execução de guiões (scripts).
  • Quanto aos nomes de utilizador dos alunos, adoptamos uma organização por turmas e assim definimos, por exemplo, o aluno t07a20, que significa aluno do sétimo ano, turma A, número 20. Ou o aluno t12k01, que será o aluno da turma 12.ºK com o número 1. São definidos, à partida, 30 alunos em cada turma. No nosso exemplo, temos no 7.º ano as turmas A a C, no 8.º ano as turmas A a C, no 9.º ano as turmas A a C, no 10.º ano as turmas A a O, no 11.º ano as turmas A a O e no 12.º ano as turmas A a K. Pode ser feita uma correspondência de letras, por exemplo, as turmas M, N e O do 10.º ano podem ser, na prática, as turmas A, B e C do mesmo ano mas que têm aulas à noite com as designações oficiais A, B e C.
  • Para cada turma, definimos também uma pasta de acesso comum aos vários alunos dessa turma. Essas pastas intitulam-se t07a_comum, t07b_comum, ..., t12a_comum, ..., etc. Em cada turma, todos os alunos podem ler e escrever na respectiva pasta comum. No entanto, um aluno não poderá apagar um trabalho de outro aluno, a não ser que o seu autor confira a outros permissões de escrita sobre esse trabalho. Na Área de Trabalho de cada aluno, aparece um ícone de nome Comum que dá acesso à pasta comum da turma.
  • Dentro da pasta comum da turma, existe uma pasta só de leitura, muito útil para que o professor nela introduza ficheiros para acesso geral dos alunos, sem que estes os possam alterar. A pasta chama-se Leitura.
  • Para além das turmas associadas ao normal funcionamento de aulas, são também criadas cinco turmas para uso exclusivo em provas de avaliação ou exames. Estas turmas chamam-se tp01 a tp05 e são também definidos utilizadores específicos, com nomes, por exemplo, tp0101, ..., tp0320, ... tp0530. Todos estes utilizadores têm a mesma senha, que é gerida pessoalmente pelo professor.
  • Em cada turma de provas existe uma pasta comum, mas que é só de leitura, servindo para o professor nela colocar os enunciados das provas e respectivos ficheiros auxiliares. Os nomes das pastas comuns são tp01_comum, ..., tp05_comum. Na Área de Trabalho de cada utlizador, aparece um ícone de nome Comum que dá acesso à pasta comum.
  • Os nomes de utilizador dos professores seguem simplesmente uma numeração, sendo definidos, no nosso caso, de d001 a d150.
  • Os nomes de utilizador dos funcionários seguem, no nosso caso, a numeração f001 a f060.
  • São definidos grupos, como um grupo por turma (por exemplo, t07a, t12b, tp03) e ainda os grupos alunos, docentes, funcionários. Esta definição tem grande importância ao nível das permissões de acesso a recursos.
  • Para além da criação dos utilizadores no sistema, propriamente dita, é de toda a conveniência criar pastas-pessoais-modelo para alunos, professores e funcionários. Assim se garantirá que quando um novo utilizador iniciar pela primeira vez a sua sessão encontrará o ambiente e as principais aplicações já previamente configurados. Poderão ser assim ser estabelecidas pré-definições para o fundo de Área de Trabalho, para a página de arranque do navegador da Teia Munidial, para as opções mais convenientes do OpenOffice, etc. 




2. Criação do ficheiro de estrutura

Com vista a gerar a estrutura necessária no servidor, utilizamos a aplicação de folha de cálculo OpenOffice Calc para construir um ficheiro que conterá todos os elementos da estrutura de utilizadores. Obviamente, é possível criar um ficheiro completamente novo. Outra hipótese consiste em abrir e adaptar o ficheiro de amostra que se pode obter clicando na linha seguinte:


Pode  criar no seu servidor a pasta /root/Gestão de Utilizadores e guardar aí o ficheiro. Este pode ser aberto no Editor de Texto, revelando a sua forma simples de valores separados por vírgulas, ou então, para uma melhor compreensão, pode ser aberto com o OpenOffice Calc, ficando bem patente toda a estrutura, de forma mais compreensível, dada a visualização em linhas e colunas. Como se vê no ficheiro Estrutura_servidor.csv, a primeira linha é de cabeçalho e inclui, entre outros elementos, os nomes dos vários grupos a criar. A pertença de um utilizador a um ou mais grupos é assinalada introduzindo o carácter x na coluna associada a cada um dos grupos de interesse.

Utilizando o OpenOffice Calc, ao guardar o ficheiro há que indicar o formato de valores separados por vírgulas (extensão csv) e sem qualquer símbolo de separação de texto: assinalar Editar a configuração do filtro e retirar o símbolo ". Abra o ficheiro com o simples Editor de Texto e verifique os elementos de texto se encontram devidamente separados apenas por vírgulas, sem aspas ou outros caracteres separadores.

Como se vê, o ficheiro apenas contém informação de base para a construção da estrutura, sendo ainda necessário que um guião (script) seja executado no servidor de tal modo que leia essa estrutura e tome as acções necessárias, executando as instruções apropriadas.

É importante guardar em local seguro uma cópia do ficheiro Estrutura_servidor.csv, pois ele constitui também uma documentação vital para a comunicação dos dados de acesso aos vários utilizadores e para referência futura da administração do sistema.




3. Criação dos utilizadores LDAP/Samba


Crie uma nova pasta como se segue:

mkdir /root/Gestão_de_Utilizadores


O guião de criação de utilizadores é o ficheiro que apresentamos na linha seguinte e que pode guardar na sua pasta /root/Gestão_de_Utilizadores:



Para atribuir permissão de execução, execute na consola:

chmod u+x /root/Gestão_de_Utilizadores/cria_utilizadores.awk


Nas linhas 36 e 37 deste ficheiro, encontramos:

PrimeiroCampocomGrupos=7; # Primeira coluna com nomes de grupos
UltimoCampoComGrupos=68; # Ultima coluna com nomes de grupos

Os campos que se referem (7 e 68) são as colunas do ficheiro Estrutura_servidor.csv quando visualizado como folha de cálculo. Se pretender alterar o número de grupos da estrutura, será necessário indicar qual a última coluna da folha que contém nomes de grupos, alterando a linha 37. No caso que aqui descrevemos, o último campo com grupos é o 68.º.

É boa política executar na consola inicialmente os seguintes comandos:

cd /root/Gestão_de_Utilizadores
./cria_utilizadores.awk < Estrutura_servidor.csv

O resultado desta execução é apenas texto, que é visualizado na consola, mas sem que as acções de criação de grupos, utilizadores, etc., sejam efectivamente executadas.

Se o  resultado for bom, sem erros, então passaremos à execução efectiva das acções, mediante a introdução do seguinte comando:

./cria_utilizadores.awk < Estrutura_servidor.csv | bash

A execução demora aproximadamente 35 minutos por cada 1000 utilizadores e também produz na consola linhas que vão referenciando as acções à medida que são executadas.




4. Criação das pastas-modelo dos utilizadores-tipo (alunos, professores, funcionários)


Há toda a conveniência em definir ambientes de trabalho normalizados para cada tipo de utilizador. Isso consegue-se criando utilizadores-modelo e personalizando cada um dos respectivos ambientes. Estes serão depois replicados antes do primeiro acesso dos utilizadores ao sistema. Em termos de manutenção, também será possível repor as condições iniciais de um ou mais ambientes de trabalho.

Na Consola, criar manualmente novos utilizadores, chamados amodelo, dmodelo e fmodelo (o que representa aluno-modelo, docente-modelo e funcionário-modelo):

smbldap-useradd -amP -c amodelo -G alunos -N amodelo -S amodelo amodelo
(introduzir a senha quando pedida e registá-la em local seguro)

smbldap-useradd -amP -c dmodelo -G docentes -N dmodelo -S dmodelo dmodelo
(introduzir a senha quando pedida e registá-la em local seguro)

smbldap-useradd -amP -c fmodelo -G funcionários -N fmodelo -S fmodelo fmodelo
(introduzir a senha quando pedida e registá-la em local seguro)
 

Para definir da melhor forma os conteúdos de uma pasta-pessoal-modelo de utilizador, o que temos a fazer é iniciar sessão como utilizador-modelo (por exemplo, começar por entrar como amodelo), estabelecer as definições de ambiente e de aplicações que pretendermos e depois terminar a sessão.

Em seguida apresentamos algumas sugestões de definições que achamos de grande interesse:
  • No painel (barra) superior do Gnome, colocar os seguintes botões: Forçar aplicação a terminar, Terminar sessão, Encerrar computador.
  • Desactivar o utilitário de actualização automática do sistema, PackageKit (acessível no painel superior do Gnome).
     
  • Desactivar o arranque rápido do OpenOffice, acessível no painel superior do Gnome; esta função causa problemas quando o utilizador fecha uma sessão e abre outra noutro posto de trabalho (aparece um aviso de que o OpenOffice está aberto noutro posto de trabalho).
  • Em Sistema > Preferências > Aparência e comportamento > Protecção de écrã, assinalar Não trancar e Deixar de exigir senha após a activação automática da protecção de tela (screensaver).
  • No navegador de ficheiros Nautilus, em Preferências definir Abrir sempre em janela de navegador.
  • É possível pré-definir um fundo personalizado para a Área de Trabalho.
  • No Firefox, colocar como página inicial o endereço da página da Escola e definir as opções de privacidade, tempos de retenção da informação do Histórico, etc., de acordo com os seus desejos para o utilizador-tipo em questão.
  • No Firefox, em Exibir > Codificação > Seleccionar automaticamente, selccionar Universal.
  • Iniciar o OpenOffice e neste desactivar certas opções indesejáveis, em Correcção automática: retirar o "visto" de Duas maiúsculas iniciais e de Iniciar frases sempre com maiúscula.
  • No OpenOffice, em Ferramentas > Opções > Java, definir ou verificar a correcta definição de um ambiente de execução Java e no caso de se utilizar o Java Multimedia Framework clicar em ClassPath... para indicar o caminho para o ficheiro jmf.jar.
  • Se assim desejarmos, podemos criar no painel (barra) superior do Gnome, ou noutro painel que activarmos, atalhos para as aplicações mais utilizadas, bem como realizar outras personalizações que deseje.
Termine a sessão. Na pasta pessoal do utilizador-modelo ficaram as definições que realizámos, estando prontas a serem replicadas.

Pode realizar acções análogas com os utilizadores dmodelo e fmodelo.

Se pretendermos simplificar, adoptando o mesmo esquema para todos os tipos de utilizador, bastará ter realizado as acções para o utilizador amodelo e depois copiar a respectiva pasta pessoal como se segue, introduzindo na Consola:

cd /home
cp -R amodelo dmodelo
cp -R amodelo fmodelo
 



5. Criação das pastas comuns das turmas das aulas e das turmas de provas

Colocar na pasta /root/userscripts os seguintes guiões:



Seguidamente, na Consola, atribuir permissões de execução e executar os guiões:

cd /root/userscripts
chmod u+x *
./cria_pastas_comuns_turmas
./cria_pastas_comuns_provas


 

6. Criação dos atalhos para as áreas comuns das turmas

Na Consola, para criar a pasta atalhos, introduzir:

mkdir /home/atalhos


Seguidamente, descomprimir no interior da pasta atalhos o seguinte ficheiro:


Tenha em atenção que o  resultado deverá ser, no interior da pasta /root/atalhos, a presença de uma quantidade de atalhos, que são ficheiros com a extensão .desktop.




7. Replicação das pastas-modelo dos utilizadores

Após a criação dos utilizadores e restantes condições acima referidas, criar uma nova pasta como se segue:

mkdir /root/userscripts
 
E colocar no seu interior os seguintes guiões destinados à replicação das pastas-modelo, atribuição das posses e permissões e ainda à criação dos atalhos para as áreas comuns:



Para atribuir permissões de execução, introduza na Consola:

chmod u+x /root/userscripts/*
 

E seguidamente, para replicar as pastas-modelo, introduza na Consola:

cd /root/userscripts
./limpa_recria_tudo


A replicação das pastas-modelo e restantes operações demorarão cerca de 25 minutos por cada 1000 utilizadores. Boa altura para respirar ar fresco, esticar as pernas e beber um chá verde.



N.B. - No caso de se pretender uma estrutura diferente da que aqui ilustramos, por exemplo ao nível do número de turmas de cada ano, do número de professores ou de funcionários,  do número de turmas de provas, etc., será necessário, antes de executar, modificar os guiões que aqui fornecemos, o que em todo o caso é muito fácil de efectuar, analisando  no Editor de Texto os conteúdos desses ficheiros e introduzindo neles cuidadosamente as modificações pretendidas.

 


Para introduzir ou recolher ficheiros nas pastas comuns ou pessoais, de foma automatizada e extremamente conveniente e fiável, utilizamos o Painel de Gestão Remota que descrevemos sumariamente nesta página.

 

Voltar


 
 
 
     Livre - Licença Creative Commons - 2007-2012 - Sérgio Ramos ↑ Topo ↑