Estou tentando configurar a inicialização pela rede do Ubuntu mini.iso
via iPXE e NFS. Atualmente estou analisando tudo por meio da linha de comando do iPXE em vez de um script. Certifiquei-me de construir o iPXE com NFS habilitado, e isso parece estar funcionando muito bem porque posso chegar initrd.gz
bem. Mas não consigo descobrir como dizer ao iPXE qual é o kernel; Presumi que o linux
arquivo seria o kernel, mas quando tento dizer ao iPXE para usar esse arquivo, ele lança a extensão Exec format error (http://ipxe.org/2e008081)
.
Para entrar em mais detalhes, veja como o sistema é configurado:
- mini.iso é montado em um QNAP TurboNAS como uma pasta compartilhada, com acesso de convidado habilitado por NFS
- Novo servidor PXE inicializa e carrega iPXE em cadeia via TFTP
- Entrei
<Ctrl-B>
na linha de comando do iPXE initrd nfs://guest@<nfs ip address>/Ubuntu1604Mini/initrd.gz
funciona muito bemkernel nfs://guest@<nfs ip address>/Ubuntu1604Mini/linux
enlouquece com o erro acima
Estou tendo dificuldade em pesquisar esta questão no Google porque todo o resto parece assumir uma imagem que não é de inicialização pela rede, então todas essas instruções assumem a presença do casper
diretório, casper/vmlinuz
mas o mini.iso parece ter uma estrutura muito diferente.
Qualquer ajuda com isso seria muito apreciado! Obrigado!
Editar
Se for relevante, todo o acesso de convidado do NFS será somente leitura.
Editar 2:
Parece que este é realmente um problema de UEFI. Encontrei na documentação onde o mini.iso não está configurado para inicializar em ambientes UEFI. Então, comecei a tentar fazer isso funcionar através do Ubuntu 16.04 Server .ISO e ainda estou tendo problemas; a partir de algumas pesquisas superficiais na web, parece que o vmlinuz no Ubuntu 16.04 não é compilado com os Stubs EFI. Encontrei o arquivo EFI/BOOT/BOOTx64.EFI, mas quando o carrego em cadeia com iPXE, ele começa a tentar encontrar uma imagem de Netbook via TFTP, então não tenho 100% de certeza do que isso está fazendo ou quais argumentos posso transmitir.
Responder1
Eu tive o mesmo problema em uma inicialização ao vivo do Debian no nfs. A documentação do ipxe refere-se ao caso de inicialização com bios mas não com efi, a solução, como você mencionou, está relacionada ao efi.
Adicione o parâmetro initrd=initrd_file_name à linha imgargs.
A fonte desta informação é:http://forum.ipxe.org/showthread.php?tid=7522
Embora não o encontre na documentação oficial, funciona para mim no efi.