Mudanças entre as edições de "ARC60808-2014-2"
Linha 531: | Linha 531: | ||
{{collapse top | Exercício / Desafio 3}} | {{collapse top | Exercício / Desafio 3}} | ||
− | Faça um | + | Faça um shellScript que compacte todos arquivos passados como parâmetros (separadamente). |
Seu script deve ter no máximo 5 linhas. | Seu script deve ter no máximo 5 linhas. | ||
Utilize o gzip para compactar. | Utilize o gzip para compactar. | ||
Exemplo de chamada do script: meuScriptCompactador.sh aqruivo1 outroArquivo file3 | Exemplo de chamada do script: meuScriptCompactador.sh aqruivo1 outroArquivo file3 | ||
+ | {{collapse bottom}} | ||
+ | |||
+ | {{collapse top | Exercício / Desafio 4}} | ||
+ | |||
+ | Faça um shellScript que a partir de um arquivo de entrada, leia linha a linha e retorne faça a média. | ||
+ | |||
+ | Exemplo Arquivo entrada: | ||
+ | João 7 8 9 | ||
+ | Marcelo 6 8 10 | ||
+ | Maria 5 9 8 | ||
+ | Fernando 4 7 9 | ||
+ | |||
+ | Exemplo saída esperada: | ||
+ | João 8 | ||
+ | Marcelo 8 | ||
+ | ... | ||
+ | |||
{{collapse bottom}} | {{collapse bottom}} |
Edição das 14h11min de 20 de agosto de 2014
Professores: Odilson Tadeu Valle e Tulio Alberton Ribeiro
Encontros: 2ª feira, 4ª feira e 6ª feira entre 13h30 às 15h20 turma A e 15h40 às 17h30 turma B
Atendimento paralelo: Odilson 3ª feira das 9h40 às 10h35 e 4ª das 14h25 às 15h20. Local: Lab. de Desenvolvimento.
Email: odilson@ifsc.edu.br e tulio.alberton@ifsc.edu.br
IMPORTANTE: o direito de recuperar uma avaliação em que se faltou somente existe mediante justificativa reconhecida pela coordenação. Assim, deve-se protocolar a justificativa no prazo de 48 horas, contando da data e horário da avaliação e aguardar o parecer da coordenação.
Referências bibliográficas
- Odilson T. Valle . Administração de Redes com Linux: Fundamentos e Práticas. 1. ed. Florianópolis: Publicação do IF-SC, 2010. v. 1000. 302p .
- Valle, Odilson Tadeu. Gerência de Redes. IFSC - Unidade São José. 2009.
- Guia Foca Linux (intermediário ou avançado)
- Demais referências contidas na página principal de GER.
Material de Apoio
Site para treinar comandos básicos. Simula um terminal shell do Linux.
Site para treinar desenvolvimento de shell scripts.
Cronograma de atividades
Aula | Data | Horas | Conteúdo | Recursos | |
---|---|---|---|---|---|
1 | 30/7 | 2 | Apresentação da Disciplina | Sala de Aula, projetor multimídia, wiki | |
2 | 1/8 | 2 | Revisão comandos básicos em Linux | Sala de Aula/Lab, Projetor Multimídia, máquinas virtuais | |
3 | 4/8 | 2 | Revisão comandos básicos em Linux | Lab, Projetor multimídia, máquinas virtuais | |
4 | 6/8 | 2 | Revisão comandos básicos em Linux | Lab, Projetor multimídia, máquinas virtuais | |
5 | 11/8 | 2 | Editor VI | Lab, Projetor multimídia, máquinas virtuais | |
6 | 13/8 | 2 | Lógica de programação | Lab, Projetor multimídia, máquinas virtuais | |
7 | 15/8 | 2 | Shell Script | lab, Projetor multimídia, máquinas virtuais | |
8 | 18/8 | 2 | Shell Script | lab, Projetor multimídia, máquinas virtuais | |
9 | 20/8 | 2 | Exercícios: revisão e esclarecimento de dúvidas para a primeira avaliação. | lab, Projetor multimídia, máquinas virtuais | |
10 | 22/8 | 2 | Avaliação 1 | lab, Projetor multimídia, máquinas virtuais | |
11 | 25/8 | 2 | Administração de usuários e grupos. | lab, Projetor multimídia, máquinas virtuais | |
12 | 27/8 | 2 | Administração de usuários e grupos. | lab, Projetor multimídia, máquinas virtuais | |
13 | 29/8 | 2 | Permissão de acesso à arquivos. Realização do roteiro prático 06 para fixação do conteúdo. | lab, Projetor multimídia, máquinas virtuais | |
14 | 1/9 | 2 | Instalação de Programas. | lab, Projetor multimídia, máquinas virtuais | |
15 | 3/9 | 2 | Sistemas de Arquivos. | lab, Projetor multimídia, máquinas virtuais | |
16 | 5/9 | 2 | Sistemas de Arquivos. | lab, Projetor multimídia, máquinas virtuais | |
17 | 8/9 | 2 | Cotas em disco para usuários e grupos. | lab, Projetor multimídia, máquinas virtuais | |
18 | 10/9 | 2 | Agendamento de Tarefas. | lab, Projetor multimídia, máquinas virtuais | |
19 | 12/9 | 2 | Arquivos de registros de logs. | lab, Projetor multimídia, máquinas virtuais | |
20 | 15/9 | 2 | Políticas de backup. | lab, Projetor multimídia, máquinas virtuais | |
21 | 17/9 | 2 | Configuração de interface de rede. | Lab, Projetor multimídia, máquinas virtuais | |
22 | 19/9 | 2 | Ferramentas de caprura de pacotes. | lab, Projetor multimídia, máquinas virtuais | |
23 | 22/9 | 2 | Configuração de sub-redes. | lab, Projetor multimídia, máquinas virtuais | |
24 | 24/9 | 2 | NAT. | lab, Projetor multimídia, máquinas virtuais | |
25 | 26/9 | 2 | Exercícios. Revisão antes da avaliação e esclarecimento de dúvidas. | lab, Projetor multimídia, máquinas virtuais | |
26 | 29/9 | 2 | Avaliação 2. | lab, Projetor multimídia, máquinas virtuais | |
27 | 1/10 | 2 | DNS. | lab, Projetor multimídia, máquinas virtuais | |
28 | 3/10 | 2 | DNS. | lab, Projetor multimídia, máquinas virtuais | |
29 | 6/10 | 2 | Servidor correio eletrônico (Postfix). | lab, Projetor multimídia, máquinas virtuais | |
30 | 8/10 | 2 | Servidor correio eletrônico (Postfix). | lab, Projetor multimídia, máquinas virtuais | |
31 | 10/10 | 2 | Webmail (RoundCUbe). | lab, Projetor multimídia, máquinas virtuais | |
32 | 13/10 | 2 | Servidor web (Apache). | lab, Projetor multimídia, máquinas virtuais | |
33 | 15/10 | 2 | FTP. | lab, Projetor multimídia, máquinas virtuais | |
34 | 17/10 | 2 | SMB e NFS. | lab, Projetor multimídia, máquinas virtuais | |
35 | 20/10 | 2 | SMB e NFS. | lab, Projetor multimídia, máquinas virtuais | |
36 | 22/10 | 2 | DHCP. | lab, Projetor multimídia, máquinas virtuais | |
37 | 24/10 | 2 | Exercícios. Revisão antes da avaliação e esclarecimento de dúvidas. | lab, Projetor multimídia, máquinas virtuais | |
38 | 27/10 | 2 | Avaliação 3. | lab, Projetor multimídia, máquinas virtuais | |
39 | 29/10 | 2 | SSH. | lab, Projetor multimídia, máquinas virtuais | |
40 | 31/10 | 2 | Proxy/Cache (squid) | lab, Projetor multimídia, máquinas virtuais | |
41 | 3/11 | 2 | Proxy/Cache (squid) | Lab, Projetor multimídia, máquinas virtuais | |
42 | 5/11 | 2 | Firewall com iptables | Lab, Projetor multimídia, máquinas virtuais | |
43 | 7/11 | 2 | Firewall com iptables | Lab, Projetor multimídia, máquinas virtuais | |
44 | 10/11 | 2 | VPN. | Lab, Projetor multimídia, máquinas virtuais | |
45 | 12/11 | 2 | Exercícios. Revisão antes da avaliação e esclarecimento de dúvidas. | Lab, Projetor multimídia, máquinas virtuais | |
46 | 14/11 | 2 | Avaliação 4. | Lab, Projetor multimídia, máquinas virtuais | |
47 | 17/11 | 2 | Projeto Integrador | ||
48 | 19/11 | 2 | Projeto Integrador | ||
49 | 21/11 | 2 | Projeto Integrador | ||
50 | 24/11 | 2 | Projeto Integrador | ||
51 | 26/11 | 2 | Projeto Integrador | ||
52 | 28/11 | 2 | Projeto Integrador | ||
53 | 1/12 | 2 | Projeto Integrador | ||
54 | 3/12 | 2 | Projeto Integrador | ||
55 | 5/12 | 2 | Projeto Integrador | ||
56 | 8/12 | 2 | Projeto Integrador | ||
57 | 10/12 | 2 | Projeto Integrador | ||
58 | 12/12 | 2 | Projeto Integrador | ||
59 | 15/12 | 2 | Projeto Integrador | ||
TOTAL | 118 |
Diário de aulas
Aula 1 - 30/7/14: Apresentação da disciplina |
---|
|
Aula 2,3,4 - 1,4,6/8/14: Revisão dos comandos básicos |
---|
Objetivo: Revisão dos comandos básicos, familiarização e fixação do conteúdo. Material Auxiliar (Comandos básicos 01) (Comandos básicos 02 ) ( Slides Aula Introdução ao Linux Tulio.)
|
Aula 5 - 8/8/14: Editor VI |
---|
Objetivo: Familiarização com o editor e ser capaz de executar comandos simples, porém úteis para manipulação de arquivos. Este roteiro não é para entregar, mas é para fazer e guardar consigo, pois poderá servir de consulta para exercícios futuros, e as provas serão baseadas naquilo feito em sala de aula.
|
Aula 6 - 11/8/14: Lógica de Programação |
---|
Introdução à Lógica de Programação Introdução ao Shell (Slides Prof. Gustavo Introdução ao Shell, Slides Prof. Glauco Introdução ao Shell). Objetivo: Criar um script Shell com comandos básicos e que seja capaz de executar tarefas simples. Este roteiro não é para entregar, mas é para fazer e guardar consigo, pois poderá servir de consulta para exercícios futuros, e as provas serão baseadas naquilo feito em sala de aula. ROTEIRO:
Gabarito:
|
Aula 7,8,9 - 13,15,18/8/14: Shell Script |
---|
Objetivo: Ser capaz de implementar as estruturas de teste if, while e for, para a execução de tarefas simples no Linux. ROTEIRO:
Gabarito Ex. 3:
|
Aula 10 - 20/8/14: Dúvidas e preparação para avaliação |
---|
Exercícios de fixação / Desafios
Exercício / Desafio 1 |
---|
Crie os arquivos abaixo na pasta ~/meusLogs e preencha com conteúdo aleatório. tail -n 1 ~/meusLogs/arq1 head -n 1 ~/meusLogs/outroArq ls -lat ~/meusLogs/ A saída dos comandos devem ser colocados em variáveis e só então redirecionados para o arquivo. Ex.: VAR1=` comando a ser executado` Ex.: VAR2=`...` Para acessar uma variável utiliza o caracter $ Ex.: echo $VAR1 Sendo que, você irá identificar a cada chamada do script, em qual dia, mês, ano, hora, minuto e segundo o script foi chamado e colocar no topo de cada saída gerada a seguinte informação: Log gerado em: 07-08-2014_17:25:36, olhar exemplo no final do exercício. Dicas: você irá utilizar o comando 'date' para gerar a saída no formato desejado e redirecionar a saída para o arquivo em questão com >>. O arquivo monitorSaidaLog.txt deve estar em ~/meusLogs/monitorSaidaLog.txt, ou seja, dentro do home do usuário criar a pasta meusLogs e redirecionar a saída do script para lá...
d-m-Y_HMS d = dia atual, 0-31 m = mês atual, 1-12 Y = ano atual, 1900 - hoje H = hora atual, 0-23 M = minuto atual, 0-59 S = segundo atual, 0-59
Log gerado em: 07-08-2014_17:25:36 Aug 7 17:13:22 wrl -- MARK -- Aug 7 13:15:01 wrl kernel: [ 111.330006] eth0: no IPv6 routers present Aug 7 16:13:42 wrl su[8856]: + /dev/pts/1 worm:root Log gerado em: 07-08-2014_17:26:34 Aug 7 17:13:22 wrl -- MARK -- Aug 7 13:15:01 wrl kernel: [ 111.330006] eth0: no IPv6 routers present Aug 7 16:13:42 wrl su[8856]: + /dev/pts/1 worm:root
Se tudo correr bem, a cada 60 segundos, o arquivo deve ser incrementado com o novo conteúdo.
|
Exercício / Desafio 2 |
---|
Fazer um Script com o nome scriptBackupDir.sh para gerar o backup de um diretório. O script de backup deve ser executado a cada 2 minutos. Você deve salvar informações sobre o backup em um arquivo de log. Você deve a cada nova execução, se tudo correr bem, apagar o penúltimo backup feito, de tal forma que só o último backup gerado permaneça salvo. Você deve solicitar ao usuário de qual diretório deve ser feito backup.
read DIR_BKP_NOME #ou através de parâmetros A variável DIR_BKP_NOME deve ser colocada no topo do script, na primeira linha. diretório de destino do backup. DIR_DEST="~/Backup_Dir/" nome do backup com esse formato: BKP_NOME=15-08-2014-12-47-22.tar.gz" echo "Backup salvo em:" NOME_SALVAR= echo $NOME_SALVAR colocar lógica aqui...
tar -cvvzf $NOME_SALVAR $DIR_BKP_NOME > /dev/null 2> /dev/null REMOVE_LAST=`cat $DIR_DEST"NomeArquivoLog.log"` echo $VAR_COM_NOME_COMPLETO > $DIR_DEST"NomeArquivoLog.log" |
Exercício / Desafio 3 |
---|
Faça um shellScript que compacte todos arquivos passados como parâmetros (separadamente). Seu script deve ter no máximo 5 linhas. Utilize o gzip para compactar. Exemplo de chamada do script: meuScriptCompactador.sh aqruivo1 outroArquivo file3 |
Exercício / Desafio 4 |
---|
Faça um shellScript que a partir de um arquivo de entrada, leia linha a linha e retorne faça a média. Exemplo Arquivo entrada: João 7 8 9 Marcelo 6 8 10 Maria 5 9 8 Fernando 4 7 9 Exemplo saída esperada: João 8 Marcelo 8 ...
|