Re: [RESOLVIDO] Boot Remoto (LTSP) sem DHCP. Era: Boot Remoto (ltsp) com DHCP Windows
Em 13/06/07, Gerson Henrique Diesel <gerson.diesel@gmail.com> escreveu:
Em 13/06/07, Junior Polegato - Linux <linux@juniorpolegato.com.br> escreveu:
Olá Gerson,
Parabéns pelo trabalho e obrigado por ter divulgado. Mas comigo
ficaram dúvidas:
1. Você compilou um kernel e initramfs para cada terminal?
2. Qual kernel usou, original, ltsp ou algum modificado por alguma distro?
3. Como cada terminal "sabe" qual kernel e initramfs carregar?
4. O kernel e initramfs ficam no servidor ou no disquete?
5. É possível ter "configfile (nd)/menu.lst" para cada terminal, tipo
"configfile (nd)/menu-1.lst", "configfile (nd)/menu-2.lst"... ?
6. Não é possível pegar o IP da configuração do Grub?
Por enquanto é isso, obrigado.
--
Atenciosamente,
Junior Polegato
Um peregrino de problemas; Um pergaminho de soluções!
Página Profissional:
http://www.juniorpolegato.com.br
Respondendo as perguntas:
1. Você compilou um kernel e initramfs para cada terminal?
Não precisei recompilar o kernel, precisei sim descompactar o initramfs, editar o arquivo init e recompactar.
2. Qual kernel usou, original, ltsp ou algum modificado por alguma distro?
Usei o kernel que vem no pacote do LTSP (2.6.20.9-ltsp-1). Na verdade vieram 3 opções de kernel:
- 2.6.16
- 2.6.17
- 2.6.20
Testei com o .16 e o .20. Ambos funcionaram igualmente.
3. Como cada terminal "sabe" qual kernel e initramfs carregar?
Aí é que está o trabalho. Neste caso, ao invés de usar dois arquivos menu.lts (um no disquete e um no servidor), utiliza-se somente um arquivo menu.lst no disquete, e no mesmo indica-se o initramfs correspondente do terminal. Ex.:
title Boot Remoto
ifconfig --address=<IP do Terminal> --mask=<máscara de rede> --server=<servidor de boot remoto>
kernel (nd)/2.6.20.9-ltsp-1/bzImage-
2.6.20.9-ltsp-1
initrd (nd)/2.6.20.9-ltsp-1/initramfs-<ip do terminal).gz
É necessário um initramfs diferente para cada terminal. Repetindo, não é necessário recompilar kernel, basta descompactar o initramfs, editar o init, e recompactar o initramfs.
Claro, esta é uma opção. Lendo a sua pergunta 6 comecei a pensar um pouco...
4. O kernel e initramfs ficam no servidor ou no disquete?
Ambos ficam no servidor, no diretório configurado pelo tftpd (geralmente /tftpboot/lts)
5. É possível ter "configfile (nd)/menu.lst" para cada terminal, tipo
"configfile (nd)/menu-
1.lst", "configfile (nd)/menu-
2.lst"... ?
Sim, é possível ter um menu.lst para cada terminal.
6. Não é possível pegar o IP da configuração do Grub?
Interessante. Não havia pensando nisto. Para isto eu teria que:
- No momento em que inicializar o initramfs, montar o /dev/fd0;
- Cat | grep | cut no menu.lst do disquete, para pegar o ip.
Vou tentar. Se der certo não é necessário mais ter um initramfs para cada terminal.
Gostei da idéia.
Colocarei os resultados.
Surgiu uma dificuldade:
Como acessar o floppy através do initramfs? o /dev/fd0 ainda não existe!
--
Gerson Henrique Diesel
MSN -
gersondiesel@hotmail.com
Reply to: