curso de linux - petcocelinux.files.wordpress.com€¦ · $ git comando para gerenciar acesso à...

Post on 09-Oct-2020

42 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Curso de LinuxAula 3

Redes e scripts

Lucas Ricardo e Enrico Manfronpetcocelinux@gmail.com

revisÃO

revisãomaNUTENÇÃO DO SISTEMA

◆ $ fsck <opções> <dispositivo>● FileSystem Check ● Existe uma para cara sistema de arquivo diferente:

○ fsck.ext2○ fsck.ext3

◆ $ badblocks <opções> <dispositivo>● Marca blocos defeituosos no HD

○ Ajuda na hora de gravar informações○ O sistema já sabe onde está defeituoso

revisãoAtividades programadas

◆ cron● Daemon que permite agendar execução de comando ou programa● Edição no arquivo /etc/crontab

○ cron.daily, ...

◆ $ at● Agendar tarefa:

○ echo ls | at 19:54● Visualizar tarefas:

○ $ atq● Remover tarefas:

○ $ atrm <NÚMERO DA TAREFA>

revisãoKernel e módulos

◆ Peça central do sistema operacional◆ Controla os dispositivos e periféricos do sistema

Linux não é um Sistema Operacional, é um Kernel

◆ Windows 10 é um sistema operacional● Kernel = Windows NT

https://en.wikipedia.org/wiki/Comparison_of_operating_system_kernels

revisãoKernel e módulos

◆ Kernel (Formado por módulos)

revisãoDaemons e logs

◆ Logs● Arquivos de registro de operações do sistema.

◆ Daemons● Controlam serviços providos pelo sistema, quando necessário. ● Guarda de trânsito

revisãoExecução de programas

◆ $ <comando> ; <comando>: ...● Executa comandos em sequência.

◆ $ ps <opções>● Apresenta processos em execução no terminal que foram iniciados.

◆ $ top <opções> ● Apresenta todos os processos.

◆ $ fg <numero>● Passa um processo para o primeiro plano.

◆ $ bg <numero>● Passa um processo para o segundo plano.

revisãoControle de execução

◆ $ CTRL + C ● Cancela a execução de um processo em primeiro plano.

◆ $ CTRL + z ● Para a execução de um processo em primeiro plano.

◆ $ jobs● Apresenta processos parados ou em segundo plano.

◆ $ kill <opções> <sinal> <número> ● Permite que você envie um sinal a um programa.

redes e internet

Redes e internet➔ Rede é a conexão de duas ou mais máquinas com o objetivo de

compartilhar recursos entre uma máquina e outra:◆ Mensagens◆ Uso de impressoras◆ Compartilhamento de dados◆ Internet◆ Acesso sites

Redes e internet➔ Como a gente se localiza nessa rede de dados então?

◆ Endereço IP● IPV4● IPV6

Redes e internet➔ Endereço de IP:

Redes e internet➔ Tipos de Redes:

◆ LAN - Local Area Network - Conecta computadores em um mesmo espaço físico, normalmente que utilizam o MESMO servidor de internet.

◆ MAN - Metropolitan Area Network - Redes compartilhadas em cidades ou grandes localidades.

◆ WAN - Wide Area Network - Redes que compartilham arquivos entre localidades maiores do que uma cidade (Estados e países)

Redes e internet➔ Tipos de Redes:

cOMANDOS de rede➔ $ wget <url>

◆ Esse comando é utilizado para baixar arquivos diretamente pelo terminal● wget http://website.com/files/file.zip

➔ $ curl◆ Manipula acessos e dados em “sites” da internet (URL)

● Acesso à informações disponíveis na rede:○ curl http://wttr.in/Curitiba

● Verificação de disponibilidade de sites:○ curl -Is https://www.twitter.com -L | grep HTTP/

➔ $ Ssh◆ Comando para gerenciar acesso à servidores

➔ $ git◆ Comando para gerenciar acesso à repositórios

cOMANDOS de rede➔ $ ping <host>

◆ Testa a velocidade da conexão entre você e um servidor◆ Útil para joguinhos multiplayer

● Envia apenas um pacote para testes:○ ping <host> -c 1

➔ $ telnet ◆ Possibilita o acesso remoto à um computador

➔ $ ftp◆ Possibilita a troca de arquivos entre um computador e um outro remoto.

cOMANDOS de rede➔ $ Netcat

◆ Possibilita a troca de mensagens entre dois computadores, via rede LAN.◆ IP não pode ser Privado (10.10.xx.xx)◆ Manual ensina corretamente como deve ser feito o uso

● Cuidado! Você pode dar comandos via netcat, ou seja, alguém pode executar “$ rm - rf /” no seu computador

Extras:

➔ $ PV◆ Monitora o progresso de transferências de arquivos

➔ $ wall◆ Manda mensagens para o usuário que está em outro tty (Terminal)

shell scriptbásico do básico

introdução à shell script➔ Shell Script é utilizado principalmente para tornar nossa vida,

dentro do linux, mais fácil, prática e simples. Muitas de nossas tarefas temos que repetir todos os dias, como abrir os mesmos programas ou esvaziar sempre e lixeira, etc....

➔ Pode ser usado para rodar programas executados a partir do terminal.

➔ Um script nada mais é que uma lista de passos que o seu computador lê e executa para você.

Shell Scriptbásico, relembrando:

➔ $ echo <mensagem> ◆ Imprime a mensagem na tela

➔ $ sleep <número>◆ Espera <número> segundos

➔ $ read <variável>◆ Coleta valor do teclado e coloca na variável

➔ $ >◆ Redirecionamento para arquivo

➔ $ exit◆ Sai do script

shell script

shell scriptcomeçando:

➔ Um Shell Script pode ser escrito em qualquer editor de texto.

➔ Para começar crie um arquivo de texto no diretório que você preferir:◆ Abra o terminal◆ Vá ao diretório onde deseja-se armazenar o arquivo◆ Execute “gedit <nome_do_arquivo>.sh” ◆ Lembre-se que para executar precisamos dar permissões de execução

use “chmod 711 <nome_do_arquivo>.sh”

escrevendo:

➔ Um Shell Script pode ter definido qual interpretador de comandos será usado...

➔ Você poderá usar outros, mas para a aula de hoje usaremos o bash:◆ Na primeira linha digite “#!/bin/bash”◆ É necessário usar o path completo onde se encontra o shell, nesse caso ele

está no diretório /bin/

shell script

exercício:

➔ Escreva seu primeiro script e salve-o:

#!/bin/bash # este é um comentário echo "Seu nome de usuário é:" whoami

shell script

exercício:

➔ Escreva seu primeiro script e salve-o:

#!/bin/bash # este é um comentário echo "Seu nome de usuário é:" whoami

shell script

executando:

➔ Para executar o script basta digitar no terminal◆ ./<nome_do_script>.sh◆ se ele estiver salvo em outro diretorio que não seja o seu atual, é necessário

usarmos o PATH

shell script

Variáveis:

➔ dentro do shell é possivel criar variáveis, assim:◆ nome_da_variavel=<alguma_coisa>◆ nome_da_variavel : sequência de caracteres que deve começar por qualquer

letra maiúcula ou minúscila ou underscore(_)◆ <alguma_coisa>: qualquer dado que deva ser valorado à variável◆ para acessar o valor das variáveis usamos o $ (cifrão) na frente do seu nome

● ex: jamelao=”fruta” echo $jamelao

NOTA: Observe que não pode haver espaços entre o sinal de igual e o nome da variável.( Pois é,o shell apesar de ser lindo tem umas regrinhas bem chatinhas)

shell script

variáveis:

➔ É possível colocar saídas de comandos nas variáveis:◆ nome_da_variavel=$(comando)◆ nome_da_variavel=`comando`

➔ É possível pegar dados do teclado◆ read nome_da_variavel_pra_colocar_o_dado

➔ É possível pegar dados de arquivos◆ nome_da_variavel < hacker.txt

shell script

exercício:

➔ Escreva um comando em uma variável e digite $<variável>. ➔ O que acontece ?➔ Onde podemos usar isso?

Sim, em scripts!

shell script

➔ if [ CONDIÇÃO ];then

AÇÕESfi

◆ Nota: lembre-se sempre de colocar um FI no final de cada if que você abrir◆ Nota: lembre-se de quando utilizar o ‘[ ]’ sempre deixar um espaço ao redor

deles

tomada de decisão - IF

➔ if [ CONDICAO 1 ];then

AÇÕES 1elif [ CONDIÇÃO 2 ];then

AÇÕES 2else

AÇÕES 3fi

tomada de decisão - ELIF E ELSE

➔ Para as condições dentro do podemos usar parâmetros comuns:

◆ [ n string1 ]: o comprimento de string1 é diferente de 0;

◆ [ z string1 ]: o comprimento de string1 é zero;

◆ [ string1 = string2 ]: string1 e string2 são idênticas;

◆ [ string1 != string2 ]: string1 e string2 são diferentes;

CONDIÇÕES DO IF

➔ Para as condições dentro do podemos usar parâmetros comuns:

◆ [ inteiro1 -eq inteiro2 ]: inteiro1 possui o mesmo valor que inteiro2;

◆ [ inteiro1 -ne inteiro2 ]: inteiro1 não possui o mesmo valor que inteiro2;

◆ [ inteiro1 -gt inteiro2 ]: inteiro1 é maior que inteiro2;

◆ [ inteiro1 -ge inteiro2 ]: inteiro1 é maior ou igual a inteiro2;

◆ [ inteiro1 -lt inteiro2 ]: inteiro1 é menor que inteiro2;

◆ [ inteiro1 -le inteiro2 ]: inteiro1 é menor ou igual a inteiro2;

CONDIÇÕES DO IF

➔ Para as condições dentro do podemos usar parâmetros comuns:

◆ [ e nome_do_arquivo ]: verifica se nome_do_arquivo existe;

◆ [ d nome_do_arquivo ]: verifica se nome_do_arquivo é um diretório;

◆ [ f nome_do_arquivo ]: verifica se nome_do_arquivo é um arquivo regular (texto, imagem, programa, docs, planilhas).

CONDIÇÕES DO IF

➔ Normalmente um programa recebe argumentos como entrada, igual aos comandos.

➔ Em shell script não poderia ser diferente:● $0 - contém o nome do script que foi executado● $1 até $n - contém os argumentos na ordem em que foram passados● $# - contém o número de argumentos que foi passado● $* - retorna todos os argimentos

Argumentos

Esta foi a aula 3!Aula 4 nesta mesma sala, no

mesmo horário.Dúvidas? Perguntas?

Comentários? Presentes?

Guenta ae! Tem chamada!

top related