tlperini
(usa Fedora)
Enviado em 16/02/2010 - 14:26h
Boa tarde a todos.
Estou enfrentando um problema em minha primeira implementação de um servidor de boot remoto, utilizando dhcp, tftp e pxe.
A instalação foi feita num servidor CentOS 5.4 i386 e procedeu da seguinte forma:
- Pacotes instalados:
* nfs-utils-1.0.9-42.el5
* nfs-utils-lib-1.0.8-7.6.el5
* tftp-server-0.49-2.el5
* dhcp-3.0.5-21.el5_4.1
- Configuração do dhcpd.conf (basica)
authoritative;
allow booting;
allow bootp;
ddns-update-style interim;
filename "pxelinux.0"
- Configuraçao do exports
/tftpboot/common/usr 10.9.0.0/255.255.0.0(rw,no_root_squash,sync)
/tftpboot/10.0.100.119 10.0.100.119/255.255.255.255(rw,no_root_squash_sync)
- Configuração do pxelinux.cfg/default
PROMPT 2
DEFAULT local
TIMEOUT 5
ipappend 1
append root=/dev/nfs
label local
kernel kernel-pxe
- Conteúdo da pasta /tftpboot
pxelinux.0
kernel-pxe
/pxelinux.cfg
/common
/10.0.100.119
Dentro da pasta do ip da estação foram criados os subdiretórios do / conforme o padrão. O diretório /usr é montado por nfs a partir da pasta common/usr (conforme arquivo exports).
Dentro da pasta dev executei o comando "mknod /diskless/192.168.1.21/dev/console c 5 1" para criar o console padrão.
O arquivo kernel-pxe é um kernel que compilei (2.6.32.7), adicionando alguns drivers de dispositivos de rede, além das opções de permitir DHCP, BOOTP e RARP, e a opção de permitir NFS ROOT FILESYSTEM.
O arquivo pxelinux.0 foi copiado do diretório /usr/share/syslinux.
Após iniciar os serviços do dhcp, xinetd e nfs no servidor, eu inicio uma estação (que já está configurada no dhcpd parar assumir o IP do exemplo), fazendo boot por PXE. Ela encontra o servidor DHCP, carrega o kernel PXE por tftp, monta o root filesystem via nfs, porém não finaliza a inicialização. Ela é terminada pelo seguinte erro: "Kernel panic - not syncing: No init found. Try passing init= option to kernel".
Minhas tentativas:
- Copiar o binário do init para a pasta /tftpboot/10.0.100.119/sbin;
- Adicionar no arquivo defaults a opçao append init=/sbin/init;
- Compilar outro kernel, com menos opções de módulos, que foram adicionadas direto dentro dele.
Após estas tentativas continuei recebendo o mesmo erro.
Já não encontro mais informações que me ajudem na internet.
Se alguém puder ajudar será de grande auxílio!
Att.
Perini