Para o funcionamento do LTSP, é preciso alguns programas.
# apt-get install dhcp3-server debconf-utils debootstrap ldm-server ltsp-server ltspfs nbd-server openbsd-inetd squashfs-tools tftpd-hpa xbase-clients
Além destes pacotes possível instalar o: ltsp-server-standalone
com ele vem uma configuração de dhcp-server, que vai estar localizada em:
/etc/ltsp/dhcpd.conf
Vamos aos passos de configuração e instalação.
1 - Configuração de interface de rede
O servidor deve ter duas placas de rede, vamos usar aqui no exemplo a eth1 com ip 192.168.20.1 para o LTSP
Para isso vamos abrir o:
#nano /etc/network/interfaces
E colocar a seguinte configuração na eth1 deste jeito.
auto eth1 iface eth1 inet static address 192.168.30.1 netmask 255.255.255.0 network 192.168.30.0 broadcast 192.168.30.255
depois executar...
#/etc/init.d/networking restart
2 - Configuração do DHCP3-Server
E edite o dhcpd.conf
#nano /etc/dhcp3/dhcpd.conf
O valor: authoritative; - somente coloca dhcp-server com mais autoridade/autoritário sobre outras conf ou dhcps. se tiver somente um dhcp-server na rede deixe ligado.
E caso instalou o ltsp-server-standalone a configuração de dhcp-server vai estar localizada em:
/etc/ltsp/dhcpd.conf
Agora faça as mudanças no option domain-name, option domain-name-servers e na subnet, o dhcpd.conf deve ficar assim.
authoritative; subnet 192.168.30.0 netmask 255.255.255.0 { range 192.168.30.20 192.168.30.250; option domain-name "ltsp"; option domain-name-servers 208.67.222.222, 192.168.30.1; option broadcast-address 192.168.30.255; option routers 192.168.30.1; # next-server 192.168.30.1; # get-lease-hostnames true; option subnet-mask 255.255.255.0; option root-path "/opt/ltsp/i386"; if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient" { filename "/ltsp/i386/pxelinux.0"; } else { filename "/ltsp/i386/nbi.img"; } }
Complete de editar o dhcpd.conf e informe ao dhcp-server em qual interface de rede vai responder/escutar os pedidos de conexão.
nano /etc/default/dhcp3-server
# On what interfaces should the DHCP server (dhcpd) serve DHCP requests? # Separate multiple interfaces with spaces, e.g. "eth0 eth1". INTERFACES="eth1"
No caso esta eth1 pois usaremos esta interface.
Feito tudo...execute.
#/etc/init.d/dhcp3-server restart
sudo /etc/init.d/dhcp3-server restart * Stopping DHCP server dhcpd3 [fail] * Starting DHCP server dhcpd3 [ OK ]
dhcp3 ligou corretamente.
3 - Configuração do tftpd-hpa
Abra o:
#nano /etc/default/tftpd-hpa
Veja se esta com esta configuração, caso não esteja, deixe o arquivo tftpd-hpa deste jeito...
# /etc/default/tftpd-hpa TFTP_USERNAME="tftp" TFTP_DIRECTORY="/var/lib/tftpboot" TFTP_ADDRESS="0.0.0.0:69" TFTP_OPTIONS="--secure"
Salve, de restart no tftpd-hpa:
$ sudo /etc/init.d/tftpd-hpa restart Rather than invoking init scripts through /etc/init.d, use the service(8) utility, e.g. service tftpd-hpa restart Since the script you are attempting to invoke has been converted to an Upstart job, you may also use the restart(8) utility, e.g. restart tftpd-hpa tftpd-hpa start/running, process 27182
e vai estar pronto, esta sendo o processo 27182 (tftpd-hpa start/running, process 27182) no caso acima.
4 - Configuração do NBD-Server
O nbd-server vai ser configurando colando uma linhas com valores no /etc/inetd.conf
Vamos editar o arquivo:
nano /etc/inetd.conf
9571 stream tcp nowait nobody /usr/sbin/tcpd /usr/sbin/ldminfod 9572 stream tcp nowait nobody /usr/sbin/tcpd /usr/sbin/nbdswapd 2000 stream tcp nowait nobody /usr/sbin/tcpd /usr/sbin/nbdrootd /opt/ltsp/images/i386.img
O arquivo tendo esta configuracao, vamos iniciar os serviços.
/etc/init.d/openbsd-inetd restart
* Restarting internet superserver inetd [ OK ]
Estas 3 linhas acimas deve estar dentro do inetd.conf - somente a ultima linha que inicia com 2000 (valor informa a porta) que se refere ao nbdrootd que vai negociar com terminal a i386.img (que no caso e sistema de arquivos) criado com ltsp-update-image
As outras ldminfod e nbdswapd, a primeira refere do ldm, tela de login do LTSP5 e segunda e pra ser usado no caso de swap no terminal usando recurso do servidor.
5 - Configurações extras e como verificar se tudo esta perfeito.
Pra NBD-Server poder atuar na rede vamos editar o arquivo:
nano /etc/hosts.allow
nbdrootd: ALL: keepalive nbdswapd: ALL: keepalive
O arquivo hosts.allow deve ter linhas acimas, para assim permitir/allow a todos micros/hospedeiros/hosts (por isso hosts.allow) conseguir negociar com o NBD-Server.
Verificar se esta tudo rodando, vamos ver pelas porta dos programas.
dhcp3-server - 67sudo netstat -anp | grep 67 udp 0 0 0.0.0.0:67 0.0.0.0:* 1566/dhcpd3tftpd-hpa - 69
sudo netstat -anp | grep 69 udp 0 0 0.0.0.0:69 0.0.0.0:* 966/in.tftpdnbd-server - 2000
sudo netstat -anp | grep 2000 tcp 0 0 0.0.0.0:2000 0.0.0.0:* OUÇA 1606/inetd
Esta tudo rodando. Ligue os terminais e bom trabalho.
Recomendo ver os vídeos pois mesmo longos...ali tem todos os problemas e telas de como ficar o ambiente LTSP5 em pleno funcionando.
6 - Sistemas de boot - pxe, etherboot/gpxe
No inicio estava usando o etherboot antigo, recomendo a todos que usa disquete, cd, pendrive ou memoria flash com etherboot antigo, ir no ROM-o-matic.net e pegar novamente as imagens de boot de cada placa mas em gPXE.
Vídeos
Titulo: Mostrando o LTSP4.2 no Debian Squeeze
<iframe width="560" height="315" src="https://www.youtube.com/embed/lAJHaWcv5uM?rel=0" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
Sobre: Mostrando com o virtualbox e etherboot, como seria o boot de terminal usando o LTSP4.2 instalado no Debian Squeeze
Titulo: Instalação do LTSP5 no Ubuntu 10.04 - parando na conf do NBD
<iframe width="560" height="315" src="https://www.youtube.com/embed/2xlYhM2qdbE?rel=0" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
Sobre: Video onde mostro em detalhes a instalação/configuração do dhcp3-server, tftpd-hpa, boot via rede, contrucao do ambiente LTSP5 com ltsp-build-client, mostrando que possível fazer com ele. E somente parando o vídeo por erro de boot e conf, que fecho e explico na parte 3.
Titulo: Fechando o problema com NBD-Server e mudando o sistema de etherboot
<iframe width="560" height="315" src="https://www.youtube.com/embed/NXMeVnIgbJM?rel=0" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
Sobre: Vídeo final onde fecho o problema do NBD-Server, seja resolvendo problema de configuração de rede do ambiente virtual, mais o importante e mudança do sistema etherboot, que agora sendo GPXE tem o funcionamento correto dos terminais.