115
Italo Valcy Capacitação LTSP – Onda Digital 1 Linux Terminal Server Project – LTSP Linux Terminal Server Project – LTSP Italo Valcy da Silva Brito 1 1 Departamento de Ciência da Computação Universidade Federal da Bahia Treinamento Onda Digital, Fev/2011

Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

  • Upload
    dinhthu

  • View
    312

  • Download
    5

Embed Size (px)

Citation preview

Page 1: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 1

Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy da Silva Brito1

1Departamento de Ciência da ComputaçãoUniversidade Federal da Bahia

Treinamento Onda Digital, Fev/2011

Page 2: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 2

Licença de uso

Todo o material aqui disponível pode, posteriormente, ser utilizado sobre os termos da:

Creative Commons License: Atribuição - Uso não comercial - Permanência da Licença

http://creativecommons.org/licenses/by-nc-sa/3.0/

Page 3: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 3

Sobre o curso

Módulo 1: Introdução, histórico, desenvolvimento, casos de sucesso

Módulo 2: Noções de Rede Local. Mapeamento dos diretórios e arquivos utilizados pelo LTSP (servidor e terminais). Tipos de boot remoto. Ambientes Desktop.

Módulo 3: Tecnologias envolvidas (ssh, NFS/NBD, tftp, chroot, dhcp, etc.)

Módulo 4: Permitindo recursos locais (CD, USB, Impressoras)

Módulo 5: Avaliando o desempenho do servidor

Módulo 6: Resolução de problemas

Page 4: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 4

Agenda

Módulo 1 – Introdução

Surgimento

Histórico

Desenvolvimento

Casos de sucesso

Page 5: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 5

LTSP – IntroduçãoMotivação

Os softwares apresentam uma evolução exponencial, exigindo cada vez mais recursos computacionais

Para suprir essa exigência, é necessário atualização constante do parque computacional

O que fazer com o hardware obsoleto?

Doação para instituições de inclusão digital

Page 6: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 6

LTSP – IntroduçãoMotivação

Após a reciclagem digital, temos máquinas com as seguintes características:

Baixa capacidade de processamento

Pouca memória

Geralmente sem disco rígido

Qual utilização dar a essas máquinas?

Mesmo o Linux mais simples, pode exigir recursos computacionais inexistentes nessas máquinas

Page 7: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 7

LTSP – IntroduçãoLTSP – Linux Terminal Server Project

Surge o LTSP (Linux Terminal Server Project, Projeto Servidor de Terminais baseado em Linux)

As aplicações executam no servidor e são acessíveis via “terminais-leves” (thin-clients)

O servidor possui maiores requisitos de poder computacional (cpu, memória, rede)

Os terminais, com pouca memória, processamento e sem disco, executam de maneira transparente ao usuário as aplicações

Page 8: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 8

LTSP – IntroduçãoLTSP – Linux Terminal Server Project

Com LTSP, pode-se diminuir drasticamente o custo de implantação de um laboratório de informática, possibilitando a inclusão digital de uma parcela maior da população

Utiliza Software Livre

Permite escalabilidade

Page 9: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 9

LTSP – IntroduçãoDesenvolvimento

O LTSP foi desenvolvido originalmente por Jim McQuillan, nos Estados Unidos, em 1999

Atualmente conta com desenvolvedores de todo o mundo

Site oficial:

http://www.ltsp.org

Suporte comercial:

http://www.disklessworkstations.com/

Page 10: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 10

LTSP – IntroduçãoDesenvolvimento

Onde obter ajuda:

Listas de discussão no SourceForge:

ltsp-discuss – lista de usuários

ltsp-developer – lista para desenvolvedores

K12OSN

Canal IRC no irc.freenode.net (inglês):

#ltsp

Page 11: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 11

LTSP – IntroduçãoCasos de sucesso

Faróis do Saber em Curitiba/PR

Infocentros (Bahia, Ceará, etc.)

DCC/IM/UFBA (até 2007)

Dado as características do LTSP, pode-se usá-lo para facilitar o gerenciamento de um laboratório:

Centralizar a manutenção dos clientes no servidor

Page 12: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 12

LTSP – IntroduçãoArquitetura

Baseado na arquitetura cliente-servidor

Boot via rede

Rede local de alta velocidade

Sistema básico em memória

Aplicações executadas no servidor

Renderização no cliente

Page 13: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 13

LTSP – IntroduçãoOutros recursos

LTSP-Cluster

Maior desempenho e escalabilidade do ambiente

Acesso aos recursos locais

CDRom, USB, Impressoras

Execução de aplicações locais

Terminais com maior capacidade computacional

Page 14: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 14

Agenda

Módulo 2 – Conceitos iniciais

Redes e configuração no GNU/Linux

Diretórios do LTSP

Inicialização do LTSP

Ambientes Desktop

Page 15: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 15

Conceitos básicosRede Local

Arquitetura TCP/IP

GNU/Linux em rede

Page 16: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 16

Redes

A função básica de uma rede é transportar dados de ponto à outro:

Pode ser entre dois micros, em uma pequena sala

Pode ser entre dois servidores localizados fisicamente em países distintos

Entretanto, para o software não faz diferença se os computadores a serem interligados estão na mesma sala ou à 5.000Km de distância. Como isso é possível?

Page 17: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 17

Redes

A arquitetura da rede é uma estrutura lógica e formal que especifica como os diversos componentes devem se comunicar entre si.

Assim, a arquitetura de rede em uso hoje nas redes locais (Local Area Network - LAN) bem como na atual Internet é derivada do modelo conceitual OSI (Open System Interconnection), desenvolvido pela ISO (International Standards Organization), chamdo modelo TCP/IP.

Este modelo, teve por objetivo a interoperabilidade, compatibilidade, portabilidade e escalabilidade exigidos para implementação de uma rede de computadores

Necessidade de interligação

Page 18: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 18

Redes

Protocolos

Equipamentos e meios físicos

Softwares

Principais componentes

Page 19: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 19

Redes

É a padronização de leis e procedimentos que são dispostos à execução de determinada tarefa. Na comunicação de dados e na interligação em rede, protocolo é um padrão que especifica o formato de dados e as regras a serem seguidas. Sem protocolos, uma rede não funciona. Um protocolo especifica como um programa deve preparar os dados para serem enviados para o estágio seguinte do processo de comunicação.

Grande maioria definida pela IETF

Exemplos: TCP/IP, DNS, SMTP, HTTP, OSI

Protocolos

Page 20: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 20

Redes

Concentrador (hub, switch, bridge)

Cabos

Roteadores

Estação de trabalho

Modem

Servidor

Placa de rede

Equipamentos de rede

Page 21: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 21

Redes

Softwares necessários para implementar a rede:

Implementar a hierarquia de protocolos

Implementar comunicação com o hardware e o sistema operacional

Softwares de rede

Page 22: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 22

RedesModelos de rede

Page 23: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 23

RedesSurgimento do TCP/IP

A suíte de protocolos TCP/IP foi adotada como um padrão militar em 1983, e desde então se tornou o padrão mundial para comunicações de rede na Internet e em muitas LANs, substituindo protocolos proprietários em muitos casos.

O modelo TCP/IP possui apenas “4 camadas” (ao invés das 7 do seu “genitor”, o OSI).

Todos os sistemas operacionais modernos suportam o TCP/IP

Page 24: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 24

RedesSurgimento do TCP/IP

O nome TCP/IP se refere a dois protocolos:

TCP (Transmission Control Protocol) que é o protocolo responsável pelo controle e qualidade da comunicação entre a origem (transmissor) e o destino final (receptor).

IP (Internet Protocol) que é o responsável pelo endereçamento nas redes, de forma que os dados cheguem a seu destino de acordo com o endereço de rede fornecido.

Page 25: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 25

RedesCanais virtuais ou ports

Em uma comunicação TCP/IP por uma única conexão física (meio de comunicação físico) podemos ter diferentes serviços simultâneos compartilhando essa conexão.

Para tanto, cada serviço tem um canal lógico (virtual) específico denominado de port, que é um número no TCP. Alguns ports mais utilizados:

Port 110 = pop3 (para receber e-mails)

Port 25 = smtp (para enviar e-mails)

Port 80 = http (acesso à páginas web)

Port 389 = ldap (protocolo leve de acesso à diretórios)

Port 53 = DNS

Page 26: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 26

RedesCamadas do modelo TCP/IP

A arquitetura TCP/IP divide seus processos em um modelo de quatro camadas:

Aplicação: Protocolos de aplicação: FTP, TELNET, DNS, SNMP, SMTP.

Transporte: transferência de dados host-to-host: TCP, UDP.

Rede: roteamento de datagramas da origem até o destino: IP, protocolos de roteamento.

Enlace de rede e física: transferência de dados entre elementos de rede vizinhos. Tráfego de bits.

É comum separar a parte física da camada de “Enlace de rede e física” para facilitar a compreensão e comparação com o modelo OSI.

Page 27: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 27

RedesEncapsulamento dos dados

Page 28: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 28

RedesExemplo de conexão

Rede A Rede B

HOST A HOST B

Roteador

Hosts/Rede Host/RedeHost/Rede

Inter-Rede Inter-RedeInter-Rede

TransporteTransporte

AplicaçãoAplicação

Page 29: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 29

RedesPrincipais equipamentos de rede

Hub

Switchs

Roteadores

Placas de Rede

Firewall

IDS

Page 30: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 30

RedesProtocolos – IP (Internet Protocol)

Para haver comunicação entre redes distintas, se faz necessário a utilização do protocolo IP

Define o endereçamento na camada 3.

A comunicação é feita através de pacotes denominados datagramas IP (unidade básica da transmissão).

Versões em uso: IPv4 (32 bits) e IPv6 (128 bits)

Page 31: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 31

RedesProtocolos – IP (Internet Protocol)

Um endereço IP é formado através da utilização de endereços binários compostos de 32 bits, agrupados em 4 blocos de 8 bits separados por um “.” cada

Na base decimal, é representado por 4 blocos, cada um separado por um “.” da seguinte forma:

X.X.X.X – onde X varia de 0-255 (2^8 possibilidades em cada posição)

Exemplos:

200.17.147.8

208.67.222.222

189.105.178.76

10.1.154.116

Page 32: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 32

RedesProtocolos – IP (Internet Protocol)

A primeira parte de um endereço identifica a rede e a segunda parte identifica o host. De acordo ao “tamanho” dessas partes (quantidade de octetos), dividimos os endereços IPs em classes:

Page 33: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 33

RedesDHCP ( Dynamic Host Configuration Protocol)

Protocolo de serviço TCP/IP que oferece configuração dinâmica de terminais, com concessão de endereços IP de host e outros parâmetros de configuração para clientes de rede.

Pode trabalhar com atualização:

Manual

Automática

Page 34: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 34

RedesICMP - Internet Control Message Protocol

Para testar a disponibilidade entre hosts em diferentes redes, um protocolo específico foi inventado: o ICMP (Internet Control Message Protocol)

Ferramentas comumente utilizadas em ambientes GNU/Linux que são baseadas neste protocolo são o ping e o traceroute

Page 35: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 35

RedesICMP - Internet Control Message Protocol

~$ ping -c 4 www.dcc.ufba.brPING dcc.ufba.br (200.128.57.8) 56(84) bytes of data.64 bytes from dcc.ufba.br (200.128.57.8): icmp_req=1 ttl=57 time=15.1 ms64 bytes from dcc.ufba.br (200.128.57.8): icmp_req=2 ttl=57 time=13.6 ms64 bytes from dcc.ufba.br (200.128.57.8): icmp_req=3 ttl=57 time=11.9 ms64 bytes from dcc.ufba.br (200.128.57.8): icmp_req=4 ttl=57 time=10.2 ms

--- dcc.ufba.br ping statistics ---4 packets transmitted, 4 received, 0% packet loss, time 3004msrtt min/avg/max/mdev = 10.250/12.748/15.113/1.823 ms

ping: Ferramenta de teste de conectividade

Exemplo (sucesso):

Page 36: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 36

GNU/Linux em RedeConexões

O Linux trata os adaptadores de rede através do tipo de conexão.

Vamos utilizar um adaptador de rede do tipo Ethernet, pois estaremos abordando apenas redes locais (LANs).

Page 37: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 37

GNU/Linux em RedeAdaptadores de rede

O nome dado aos adaptadores ethernet é eth, e o Linux insere um número para referência após cada adaptador instalado. Assim temos:

1º adaptador de rede – eth0

2º adaptador de rede – eth1

E assim por diante...

Page 38: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 38

GNU/Linux em RedeAdaptadores de rede

Um outro dispositivo normalmente configurado é denominado loopback, cujo ip é 127.0.0.1 (RFC1700). O loopback, tem como nome associado "localhost" e referencia a própria máquina.

Page 39: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 39

GNU/Linux em RedeComandos básicos

# ifconfig – Verifica o visualiza, ativa ou desativa uma interface de rede

# ip – visualiza ou manipula rotas, dispositivos, políticas de roteamento e túneis IP.

Page 40: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 40

GNU/Linux em RedeConfigurando uma interface: ifconfig

Para visualizar informações sobre as interfaces configuradas, digitamos ifconfig sem parâmetros. Para visualizar informações de uma interface específica, devemos passar o nome da interface como parâmetro.

Page 41: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 41

GNU/Linux em RedeConfigurando uma interface: ifconfig

Alguns parâmetros

-a exibe todas as interfaces presentes, mesmo as inativas.

<nome> [ip] netmask <addr>, define a netmask para uma interface. Exemplo:

# ifconfig eth0 192.168.10.7 netmask 255.255.255.0

# ifconfig eth0 192.168.10.7/24

Page 42: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 42

GNU/Linux em RedeDefinindo rotas: route

Q. Como podemos configurar o gateway padrão?

A. O comando route é usado para mostrar ou manipular a tabela de roteamento IP em sistemas GNU/Linux e Unix.

A tabela de roteamento é usada para configurar rotas estáticas para hosts ou redes específicas via uma interface depois de tê-la configurado com o ifconfig.

Quando as opções add ou del são usadas o route modifica a tabela de roteamento.

Sem essas opções, route exibe o conteúdo atual da tabela de roteamento.

Page 43: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 43

GNU/Linux em RedeDefinindo rotas: route

Exibir a tabela de rotas:# route ­nTabela de Roteamento IP do KernelDestino       Roteador        MáscaraGen.    Opções Métrica Ref   Uso Iface172.101.0.0    0.0.0.0         255.255.255.248 U     0       0     0   eth1169.254.0.0   0.0.0.0         255.255.0.0     U     1000    0     0   eth10.0.0.0       172.101.0.1      0.0.0.0         UG    0       0     0   eth1

Page 44: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 44

GNU/Linux em RedeDefinindo rotas: route

A sintaxe é a seguinte:

route add default gw {ADDRESS} {INTERFACE}

Onde:ADDRESS: específica o IP do gateway.

INTERFACE: especifica a interface a ser usada.

Por exemplo, supondo nosso gateway com IP 192.168.1.254, usamos o seguinte comando:

route add default gw 192.168.1.254

Para remover o gateway:

route del default

Page 45: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 45

GNU/Linux em RedeSalvando as configurações

No Debian GNU/Linux, a configuração padrão das interfaces de rede é feita no arquivo /etc/network/interfaces

Uma configuração básica com IP fixo poderia ser:

Reiniciamos o serviço:

/etc/init.d/networking restart

# The loopback network interfaceauto loiface lo inet loopback# The primary network interfaceauto eth0iface eth0 inet staticaddress 192.168.0.10netmask 255.255.255.0broadcast 192.168.0.255gateway 192.168.0.1

Page 46: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 46

GNU/Linux em RedeSalvando as configurações

É possível também configurar o /etc/network/interfaces para obter um endereço IP automaticamente através do protocolo DHCP (Dynamic Host Control Protocol):

# The loopback network interfaceauto loiface lo inet loopback# The primary network interfaceauto eth0iface eth0 inet dhcp

Page 47: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 47

GNU/Linux em RedePrática

Prática sobre configuração de rede no GNU/Linux

Ver roteiro pratica-redes-gnu-linux.pdf

Page 48: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 48

Diretórios no LTSPO ambiente chroot

Para transformar uma máquina em um thin-client, precisaremos de um sistema mínimo na estação

Carregado a partir do servidor

Executa na memória da estação

Este ambiente é chamado chroot/opt/ltsp/<arch>

Ex: /opt/ltsp/i386/

Page 49: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 49

Inicialização LTSPProcesso de inicialização do LTSP (1)

Carregar o kernel do Linux na memória do thin-client (via Etherboot ou PXE)

O Kernel inicializa todo o sistema e os periféricos que ele reconhece

Configuração de rede (IP, rota, NFS/NBD server, etc.)

Montar o sistema de arquivos raiz (root):

NFS: /opt/ltsp/<arch>

NBD: /opt/ltsp/images/<arch>.img

Page 50: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 50

Inicialização LTSPProcesso de inicialização do LTSP (2)

Script ltsp-client-setup (local devices, modulos, etc.)

/etc/rc2.d/

Iniciar o ltspfsd (caso o terminal permita dispositivos locais)

SCREEN_07 => LDM

SCREEN_01 => Console do Terminal

Log in dos usuários e utilização

Page 51: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 51

Inicialização LTSPBoot via rede no thin-client

Suporte para boot na placa de rede

Etherboot (http://www.rom-o-matic.org)

PXE (Pre-boot eXecution Environment)

Para etherboot, pode-se usar drivers externos (CDs, DVDs, Pen-drivers, disquetes, etc.)

Page 52: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 52

Ambientes Desktop

O LTSP é “independente” de ambiente desktop específico, porém alguns são mais integrados que outros

Mais usados:

GNOME

XFCE

IceWM

KDE

Page 53: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 53

Agenda

Módulo 3 – Serviços, Instalação e Configuração

DHCP

TFTP

NFS ou NBD

SSH

Instalação do LTSP

Page 54: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 54

Serviços

O LTSP depende de uma série de serviços de rede para funcionar:

DHCP: configurações de rede e parâmetros do boot remoto

TFTP: download da imagem do kernel

NFS ou NBD: montagem do sistema raiz

LDM/SSH/XDMCP: sessão gráfica com o servidor

Serviços utilizados

Page 55: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 55

DHCP

Serviço de rede (protocolo) que viabiliza configuração automática de parâmetros de rede: IP/Mask, Gateway, DNS, outros (opções para boot remoto, etc.)

Mas como obter IP sem IP??? (e.g. no boot)

Comunicação L2

Comunicação por difusão (broadcast)

Dynamic Host Configuration Protocol

Page 56: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 56

DHCPComo funciona o DHCP

Page 57: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 57

DHCPInstalação

Pacote pré-compilado disponível em várias distribuições

Instalação manual:wget ftp://ftp.isc.org/isc/dhcp/dhcp<versao>.tar.gz

tar -xzf dhcp<versao>.tar.gz

cd dhcp<versao>

./configure

make && make install

Page 58: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 58

DHCPInstalação

Instalação de um servidor DHCP no Debian GNU/Linux:

aptitude install isc-dhcp-server

Principais arquivos

/etc/dhcp/dhcpd.conf

/var/lib/dhcp/dhcpd.leases

/etc/default/isc-dhcp-server

Page 59: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 59

DHCPParâmetros de configuração

A opção range determina a faixa de endereços IP que será usada pelo servidor.

Em option routers inserimos o endereço do default gateway da rede.

A opção option domain-name-servers contém os servidores DNS que serão usados pelas estações.

default-lease-time e max-lease-time referem-se ao tempo de concessão (padrão e máximo)

Page 60: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 60

DHCPParâmetros de configuração

default­lease­time 600;max­lease­time 7200;

subnet 192.168.1.0 netmask 255.255.255.0 {  range 192.168.1.100 192.168.1.199;  option routers 192.168.1.1;  option domain­name­servers 208.67.222.222;}

Exemplo (/etc/dhcp/dhcpd.conf):

Page 61: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 61

DHCPIP fixo

host nome­da­maquina {  hardware ethernet 00:0F:B0:55:EA:13;  fixed­address 192.168.1.211;}

Podemos configurar IPs fixos para algumas máquinas na rede, fazendo controle por MAC.

Para isso editamos o dhcpd.conf e adicionamos uma seção para o host. Exemplo:

Page 62: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 62

DHCPBoot pela rede

Parâmetros importantes:

next-server: endereço do servidor a partir do qual o arquivo de boot será carregado

filename: nome do arquivo de boot que será carregado pelo cliente

default­lease­time 600;max­lease­time 7200;

subnet 192.168.1.0 netmask 255.255.255.0 {  range 192.168.1.100 192.168.1.199;  option routers 192.168.1.1;  option domain­name­servers 208.67.222.222;  filename “/ltsp/i386/pxelinux.0”;  next­server 192.168.0.1;}

Page 63: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 63

DHCP

No LTSP:

O terminal faz uma requisição no boot (PXE, etherboot) para obter: IP/Mask, GW, TFTP-Server e nome do arquivo de kernel

Depois do Kernel ter sido carregado, outra requisição DHCP é enviada para obter os demais parâmetros de rede (IP/Mask, GW, DNS, etc.)

Page 64: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 64

DHCP

Veja roteiro de prática com o instrutor.

Prática

Page 65: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 65

TFTP

Trivial File Transfer Protocol – TFTP

Objetivo similar ao FTP, porém bastante simplificado:

Suporta apenas operações de leitura ou escrita de arquivos.

Não suporta listagem de diretórios, nem autenticação

Bastante usado para transferir arquivos de configuração, ou imagens de boot

Page 66: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 66

TFTP

No LTSP:

O cliente recebe do DHCP-Server o IP e o nome do arquivo no TFTP-Server

Faz um GET do arquivo

O arquivo é o kernel, que será descompactado na memória e carregado

O boot continua...

Page 67: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 67

TFTP

tftpd-hpa

http://www.kernel.org/pub/software/network/tftp/

aptitude install tftpd-hpa

atftpd

http://freshmeat.net/projects/atftp/

aptitude install atftpd

dnsmasq (mais que um simples tftpd)

http://freshmeat.net/projects/dnsmasq/

aptitude install dnsmasq

Implementações (algumas)

Page 68: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 68

TFTP

Pode ser configurado de duas formas:

inetd

Consome menos recursos

Sujeito a falhas

standalone

Possui um daemon próprio

Consome mais recursos

Mais estável

tftpd-hpa

Page 69: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 69

TFTP

Veja roteiro de prática com o instrutor.

Prática

Page 70: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 70

NFS ou NBD

Quando o kernel finalizar seu estágio inicial, deverá montar o sistema raiz para prosseguir com o boot da máquina

Por outro lado, os terminais geralmente não tem disco (diskless)

Solução: montar o sistema raiz via rede!

NFS ou NBD

Page 71: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 71

NFS

Network File System

Sistema de Arquivos de Rede

Desenvolvido para permitir que máquinas montem partições de disco em máquinas remotas

Compartilhamento na rede

Page 72: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 72

NFS

Instalar o nfs-kernel-server

aptitude install nfs-kernel-server

Configurar o /etc/exports

Restrições de acesso (opcional):

/etc/hosts.allow

/etc/hosts.deny

Passos

Page 73: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 73

NFS

Lista de entradas, cada uma indicando um volume compartilhado

/path/to/shared-dir maq01(opt1, opt2) maq02(opt3, opt4)

Opções:

ro | rw: somente leitura ou leitura e escrita

no_root_squash: root no cliente é root no servidor (por padrão é mapeado para nobody)

no_subtree_check: caso a pasta compartilhada não seja uma partição, deve-se checar se um arquivo requisitado está na pasta adequada ou não (quando exportar a partição inteira, essa opção aumenta o desempenho)

sync | async: a escrita em um arquivo deve ou não ser sincronizada entre os clientes

/etc/exports

Page 74: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 74

NFS

Exemplo:

Ou, simplesmente:

Para o LTSP (exporta p/ qualquer cliente):

/etc/exports

/srv/home   10.0.0.1(ro) 10.0.0.2(ro) 10.0.0.3(ro)/srv/admin  192.168.0.10(rw) 192.168.0.11(rw)

/srv/home   10.0.0.0/24(ro)/srv/admin  192.168.0.0/24(rw)

/opt/ltsp/i386 *(ro,no_root_squash,async,no_subtree_chek)

Page 75: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 75

NFS

No servidor, para verificar o que está sendo exportado:

No cliente (172.16.0.1 é o servidor):

Testando

~# exportfs/srv/home          10.0.0.0/24/srv/admin          192.168.0.0/24/opt/ltsp/i386          <world>

mount  ­t nfs  172.16.0.1:/srv/home  /mnt/home

Page 76: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 76

NBD

Network Block Device

Dispositivo de Bloco de Rede

Uma maneira de prover acesso remoto a dispositivos de bloco

Para o LTSP, uma nova forma de acessar o chroot nas estações diskless

Instalação:

aptitude install nbd-server

Não há o que configurar

Page 77: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 77

NBD

Exemplo: suponha que o arquivo /tmp/xxx em ComputadorA necessita estar acessível em ComputadorB.

Em ComputadorA (non-super-user):

Em ComputadorB (super-user):

nbd­server 2000 /tmp/xxx

modprobe nbdnbd­client ComputadorA 2000 /dev/nbd0mount /dev/nbd0 /mnt/xxx

Page 78: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 78

NFS vs NBD

Sistema com alterações constantes

Vantagem usar NFS (não requer recriação de imagem)

Alterações tem efeito imediato

Ótimo para sistemas em desenvolvimento

Sistemas estáveis e estanques

Vantagem usar NBD (mais seguro contra alterações)

Para ter efeito, recria-se imagem e reinicia-se estações

Não requer muita manutenção

NBD (experiência pessoal e recomendação do LTSP)

Mais rápido

Menor tráfego de rede

Mais seguro

Page 79: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 79

NFS ou NBD

No LTSP:

Depois que o kernel finaliza o carregamento básico, o cliente do NFS ou NBD, monta o sistema raiz (/) para que a inicialização possa prosseguir

Page 80: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 80

NFS ou NBD

Veja roteiro de prática com o instrutor.

Prática

Page 81: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 81

LDM+SSH/XDMCP

Finalizado o carregamento do Kernel, deve-se exportar a interface gráfica do servidor e disponibilizá-la no cliente, via:

LDM (over SSH)

XDMCP

Page 82: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 82

LDM+SSH

LTSP Desktop Manager (Gerenciador de Desktop LTSP)

Aplicação nativa do projeto LTSP, escrito em C, leve, para login remoto no servidor

Roda na estação cliente

Comunicação com o servidor criptografada

Túnel SSH => seguro, mas lento

Não necessita configuração especial do X do servidor

Page 83: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 83

XDMCP

Não é o padrão, mas é possível

Menos seguro (dados podem ser snifados)

Muito mais rápido:

Gasta menos recursos por não criptografar

Necessita que o gdm esteja rodando no servidor

Configuração do X para aceitar conexões

Page 84: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 84

LDM+SSH vs XDMCP

Qual a melhor escolha? Depende...

Segurança da rede: devemos nos preocupar com sniffers?

LDM roda sobre SSH, evitando sniffers, mas implica queda de desempenho

XDMCP necessita de modificações no servidor

Roda no servidor

LDM roda no cliente (é mais leve)

LDM_DIRECTX: desabilita essa característica

Page 85: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 85

LTSP

Sistema base: instalação desktop padrão + pacotes do LTSP

LTSP5 está empacotado para diversas distros:

Debian, Ubuntu, Fedora, Gentoo, etc...

Page 86: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 86

LTSPComo funciona

Fonte: http://www.universolivre.com.br/blog/media/ltsp5.pdf

Page 87: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 87

LTSPLTSP-Standalone

Todos os serviços concentrados em um único servidor:

Servidor DHCP

Servidor de arquivos (NFS/NBD)

Servidor de impressão (CUPS)

Servidor TFTP

Interface gráfica

Page 88: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 88

LTSPInstalação

LTSP5 – uma restruturação completa do LTSP

Integrado nas principais distribuições:

ALT Linux – http://en.altlinux.org/LTSP

Debian – http://wiki.debian.org/LTSP

Fedora – http://k12linux.fedorahosted.org

Gentoo – https://bugs.gentoo.org/177580

openSUSE – http://en.opensuse.org/LTSP

Ubuntu – Ubuntu Quick Install Guide

Page 89: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 89

LTSP5Instalação

No Debian GNU/Linux:

aptitude install ltsp-server-standalone

Criar o chroot

ltsp-build-client

Page 90: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 90

LTSP5Prática

Ver roteiro de prática com o instrutor.

Page 91: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 91

LTSP5Customizando o comportamento do thin-client

A maioria dos terminais serão configurados automaticamente durante a inicialização, e funcionarão no estilo plug-and-play

Entretanto, eventualmente necessitaremos mudar seu comportamento

Editar o arquivo lts.conf

Page 92: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 92

LTSP5Localização do lts.conf

Com o uso do NBD, o lts.conf foi movido para o diretório do TFTP:

/var/lib/tftpboot/ltsp/<arch>

Dessa forma, as alterações feitas na configuração da máquina serão automaticamente reconhecidas, sem recriar a imagem.

Page 93: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 93

LTSP5Exemplo lts.conf

# Configuracao global[default]    LOCALDEV=True    SOUND=True    XKBLAYOUT=br    XKBMODEL=abnt2    LDM_DIRECTX=True

# por terminal[00:11:25:84:CE:BA]    XSERVER=vesa    XKBLAYOUT=us

[00:11:25:93:CF:00]    PRINTER_0_DEVICE=/dev/usblp0    PRINTER_1_DEVICE=/dev/usblp1

Page 94: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 94

LTSP5lts.conf

Mais informações sobre os parâmetros:

aptitude install ltsp-doc

man 5 lts.conf

Documentação no site

Page 95: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 95

Recursos locais

Para habilitar o reconhecimento dos dispositivos locais, o LTSP inicia alguns daemons locais

LTSPFSD: um sistema de arquivos de rede do LTSP criado usando o FUSE

Daemon no cliente para reconhecer os dispositivos

Módulo do kernel no servidor que conecta-se ao daemon no cliente

Page 96: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 96

Recursos locais

Habilitar a execução de aplicações locais via lts.conf:

LOCALDEV=True

Adicionar os usuários ao grupo FUSE, no servidor:

adduser NOME-DO-USUARIO fuse

Com isso, pode-se usar USB e CDRom no cliente

Como fazer?

Page 97: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 97

Recursos locais

Caso o cliente possua impressora local, o LTSP pode reconhecer essa impressora e ela pode ser compartilhada na rede

Requisitos:

Servidor CUPS na rede (mesmo servidor X)

Habilitar a impressora no thin-client (lts.conf)

Configurar o servidor CUPS

Impressoras

Page 98: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 98

Recursos locais

Servidor CUPS

Instalação: aptitude install cups

Configuração: geralmente a configuração padrão é suficiente

Habilitando impressoras no cliente (USB):

DEVICE_0 => 9100/TCP

DEVICE_1 => 9101/TCP

Impressoras

[00:11:25:84:CE:BA]    PRINTER_0_DEVICE=/dev/usblp0    PRINTER_1_DEVICE=/dev/usblp1

Page 99: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 99

Recursos locais

Configuração do CUPS

No gerenciador do GNOME, basta escolher a conexão do tipo “HP JetDirect”, IP do thin-client e respectiva porta.

Para configuração manual:

socket://IP-do-thin-client:9100/

Impressoras

Page 100: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 100

Agenda

Módulo 4 – Avaliação do sistema

Monitoramento

Gerenciamento de logs

Page 101: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 101

Avaliação do Sistema

LTSP funcionando, mas e a manutenção?

Desempenho do sistema

Erros

Escalabilidade

Ferramentas de monitoramento

Logs do sistema

Page 102: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 102

Avaliação do Sistema

Parâmetros a observar:

Utilização de CPU

Utilização de memória

Leitura/Escrita em disco

Desempenho do sistema

Page 103: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 103

Avaliação do Sistema

Monitorar utilização de CPU/Memória: top/htop

aptitude install htop

Desempenho do sistema

Page 104: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 104

Avaliação do Sistema

Monitorar I/O no disco: iotop

aptitude install iotop

Desempenho do sistema

Page 105: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 105

Avaliação do Sistema

Os logs do sistema são escritos no /var/log/

Facility: agrupam os logs por funcionalidade. Ex.: mensagens de autenticação ficam no auth; mensagens do kernel ficam em kernel; etc.

Ferramentas:

Logwatch / Logcheck

Comando tail tail -f /var/log/syslog

CRTL+C

Verificação de logs

Page 106: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 106

Avaliação do Sistema

Dica; habilitar o logging remoto dos clientes

Facilita o gerenciamento dos logs

Passos:

Configurar um servidor de logs (syslog-ng)

Configurar SYSLOG_HOST no lts.conf

Verificação de logs

Page 107: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 107

Avaliação do Sistema

Qual a capacidade necessária para o servidor?

Depende!

Quais as aplicações serão executadas pelos clientes?

Web-browser leve, sem Java e Flash?

Aplicações gráficas pesadas, Java, Flash, Jogos?

Qual ambiente gráfico será usado?

KDE? > GNOME? > XFCE? > IceWM?

Escalabilidade

Page 108: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 108

Avaliação do Sistema

Teoricamente1:

256 + (192 * users) MB

Na prática:

Depende!

Na falta de memória, o sistema usa a SWAP

Dica: melhor investir em memória que usar SWAP

1Dados oficiais do projeto LTSP (LTSP5 manual)

Escalabilidade – Memória

Page 109: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 109

Avaliação do Sistema

Teoricamente1:

Para um ambiente de uso variado (TuxMath, Firefox, OpenOffice, etc.) um processador de 2GHz é suficiente (recomenda-se, 3 Ghz).

Na prática:

Depende!

Dica: Multithread, Multi-core vs Multi-Processors, Cache, etc.

1Dados oficiais do projeto LTSP (LTSP5 manual)

Escalabilidade – Processador

Page 110: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 110

Avaliação do Sistema

Armazenamento não é tudo:

Velocidade de escrita/leitura

Recomenda-se o uso de RAID

Redundant Array of Independent Disks

RAID 0: segmentação (striping)

RAID 1: espelhamento (mirroring)

Escalabilidade – Disco

Page 111: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 111

Avaliação do Sistema

O LTSP funciona pela rede

Clientes <=> Servidor

Servidor <=> Internet

Clientes <=> Internet (p/ App. Locais)

Recomendações: Switches, portas gigabit, link aggregation, etc...

Escalabilidade – Rede

Page 112: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 112

Agenda

Módulo 5 – Resolução de problemas

Page 113: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 113

Resolução de problemas

Verificar logs:

/var/log/messages

/var/log/syslog

/var/log/Xorg.0.log

Verificar se os serviços estão executados. Ex: ps -e | grep tftp

Verificar porta do serviço. Ex: netstat -anp | grep :69

Page 114: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 114

Resolução de problemas

UbuntuLTSP TroubleShootinghttp://help.ubuntu.com/community/UbuntuLTSP/TroubleShooting

Page 115: Linux Terminal Server Project – LTSPLinux Terminal …italo/cursos/ltsp/capacitacao-ltsp-onda... · Linux Terminal Server Project – LTSPLinux Terminal Server Project – LTSP

Italo Valcy Capacitação LTSP – Onda Digital 115

Obrigado!!!;-)

Perguntas?