Esta seção aborda as tarefas de configuração necessárias em cenários complexos de inicialização. Contém exemplos de configurações prontas para aplicar referentes a DHCP, inicialização PXE, TFTP e Wake on LAN.
A configuração de um servidor DHCP em SUSE Linux é feita editando-se manualmente os arquivos de configuração apropriados. Esta seção aborda a extensão de configuração de um servidor DHCP existente visando fornecer os dados necessários para atender um ambiente TFTP, PXE e WOL.
Tudo o que o servidor DHCP deve fazer, além de fornecer alocação de endereço automática para os seus clientes de rede, é anunciar o endereço IP do servidor TFTP e o arquivo que deve ser extraído pelas rotinas de instalação na máquina de destino.
Efetue login como root na máquina que hospeda o servidor DHCP.
Anexe as linhas seguintes ao arquivo de configuração do seu servidor DHCP localizado em /etc/dhcpd.conf:
group {
# PXE related stuff
#
# "next server" defines the tftp server that will be used
next server ip_servidor_tftp:
#
# "filename" specifiies the pxelinux image on the tftp server
# the server runs in chroot under /srv/tftpboot
filename "pxelinux.0";
}Substitua ip_servidor_tftp pelo endereço IP real do servidor TFTP.
Para obter mais informações sobre as opções disponíveis em dhcpd.conf, consulte a página de manual sobre dhcpd.conf.
Reinicie o servidor DHCP executando rcdhcpd restart
Se você planeja usar SSH para controle remoto de uma instalação PXE e Wake on LAN, especifique explicitamente o endereço IP que o DHCP deve fornecer ao destino de instalação. Para isso, modifique a configuração DHCP mencionada acima de acordo com o exemplo a seguir:
group {
# PXE related stuff
#
# "next server" defines the tftp server that will be used
next server ip_servidor_tftp:
#
# "filename" specifiies the pxelinux image on the tftp server
# the server runs in chroot under /srv/tftpboot
filename "pxelinux.0";
host test { hardware ethernet endereço_mac;
fixed-address um_endereço_ip; }
}
A declaração de host apresenta o nome de host do destino de instalação. Para vincular o nome de host e o endereço IP a um host específico, você precisa conhecer e especificar o endereço de hardware do sistema (MAC). Substitua todas as variáveis usadas neste exemplo pelos valores reais que correspondem ao seu ambiente.
Após a reinicialização do servidor DHCP, ele fornece um IP estático para o host especificado, habilitando-o a conectar-se ao sistema por SSH.
A configuração de um servidor TFTP pode ser feita com YaST ou manualmente em qualquer outro sistema operacional Linux que tenha suporte a xinetd e tftp. O servidor TFTP fornece a imagem de inicialização para o sistema de destino uma vez que inicializa e envia uma solicitação ao mesmo.
Efetue login como root.
Inicie ++ e instale o pacote solicitado.
Clique em para verificar se o servidor foi iniciado e incluído nas rotinas de inicialização. De sua parte, não é necessária nenhuma outra ação de proteção. O xinetd inicia o tftpd no momento de inicialização.
Clique em para abrir a porta adequada no firewall em execução na sua máquina. Se nenhum firewall estiver em execução no seu servidor, esta opção não está disponível.
Clique em para pesquisar o diretório de imagem de inicialização.
O diretório padrão /tftpboot é criado e selecionado automaticamente.
Clique em para aplicar as suas configurações e iniciar o servidor.
Efetue login como root e instale os pacotes tftp e xinetd.
Se indisponível, crie os diretórios /srv/tftpboot e /srv/tftpboot/pxelinux.cfg.
Adicione os arquivos adequados para a imagem de inicialização conforme descrito na Seção 1.3.3, “Inicialização PXE”.
Modifique a configuração de xinetd localizada em /etc/xinetd.d/ para verificar se o servidor TFTP é iniciado durante a inicialização:
Se não existir, crie um arquivo chamado tftp neste diretório com touch tftp. Em seguida, execute chmod 755 tftp.
Abra o arquivo tftp e adicione as seguintes linhas:
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /tftpboot
disable = no
}
Grave o arquivo e reinicie xinetd com rcxinetd restart.
Informações técnicas e especificações completas sobre PXE estão disponíveis no documento Preboot Execution Environment (PXE) Specification (ftp://download.intel.com/labs/manage/wfm/download/pxespec.pdf).
Vá até o diretório do seu repositório de instalação e copie os arquivos linux, initrd, message e memtest para o diretório /srv/tftpboot digitando o seguinte:
cp -a boot/loader/linux boot/loader/initrd
boot/loader/message boot/loader/memtest /srv/tftpbootInstale o pacote syslinux diretamente dos seus CDs ou DVDs de instalação com YaST.
Copie o arquivo /usr/share/syslinux/pxelinux.0 para o diretório /srv/tftpboot digitando o seguinte:
cp -a /usr/share/syslinux/pxelinux.0 /srv/tftpboot
Vá até o diretório do seu repositório de instalação e copie o arquivo isolinux.cfg para /srv/tftpboot/pxelinux.cfg/default digitando o seguinte:
cp -a boot/loader/isolinux.cfg /srv/tftpboot/pxelinux.cfg/default
Edite o arquivo /srv/tftpboot/pxelinux.cfg/default e remova as linhas que começam com gfxboot, readinfo e framebuffer.
Insira as seguintes entradas nas linhas anexas dos rótulos padrão failsafe e apic:
insmod=e100
Por meio desta entrada, o módulo de kernel para uma placa de rede Intel 100MBit/s é carregado nos clientes PXE. Esta entrada depende do hardware do cliente e deve ser adaptada de acordo. No caso de uma placa de rede Broadcom GigaBit, esta entrada deve indicar insmod=bcm5700.
netdevice=eth0
Esta entrada define a interface de rede do cliente que deve ser usada para a instalação da rede. Só será necessária se o cliente possuir várias placas de rede, devendo ser adaptada de acordo. No caso de uma única placa de rede, esta entrada pode ser omitida.
install=nfs://ip_servidor_inst/caminho_fonte_inst/CD1
Esta entrada define o servidor NFS e a fonte de instalação para a instalação do cliente. Substitua ip_servidor_inst pelo endereço IP real do seu servidor de instalação. caminho_fonte_inst deve ser substituído pelo caminho real para as fontes de instalação. As fontes HTTP, FTP ou SMB são endereçadas de maneira semelhante, exceto pelo prefixo de protocolo, que deve indicar http, ftp ou smb.
![]() | Importante |
|---|---|
Se precisar passar outras opções de inicialização para as rotinas de instalação, como parâmetros de inicialização SSH ou VNC, anexe-os à entrada | |
A seguir, temos um exemplo de arquivo /srv/tftpboot/pxelinux.cfg/default. Ajuste o prefixo de protocolo para a fonte de instalação para corresponder à configuração da sua rede e especifique o seu método de conexão preferido para o instalador adicionando as opções vnc e vncpassword ou ssh e sshpassword à entrada install. As linhas separadas por \ devem ser digitadas como uma linha contínua sem quebra de linha e sem \.
default linux
# default
label linux
kernel linux
append initrd=initrd ramdisk_size=65536 insmod=e100 \
install=nfs://ip_servidor_inst/caminho_fonte_inst/produto
# failsafe
label failsafe
kernel linux append initrd=initrd ramdisk_size=65536 ide=nodma apm=off acpi=off \ insmod=e100
install=nfs://ip_servidor_inst/caminho_fonte_inst/produto
# apic
label apic
kernel linux
append initrd=initrd ramdisk_size=65536 apic insmod=e100 \
install=nfs://ip_servidor_inst/caminho_fonte_inst/produto
# manual
label manual
kernel linux
append initrd=initrd ramdisk_size=65536 manual=1
# rescue
label rescue
kernel linux
append initrd=initrd ramdisk_size=65536 rescue=1
# memory test
label memtest
kernel memtest
# hard disk
label harddisk
kernel linux append SLX=0x202
implicit 0
display message
prompt 1
timeout 100
Substitua ip_servidor_inst e caminho_fonte_inst pelos valores usados na sua configuração.
A seção a seguir serve como breve referência às opções PXELINUX usadas nesta configuração. Mais informações sobre as opções disponíveis são encontradas na documentação do pacote syslinux localizada em /usr/share/doc/packages/syslinux/.
As opções relacionadas aqui são um subconjunto de todas as opções disponíveis para o arquivo de configuração PXELINUX.
DEFAULT opções de kernel...
Configura a linha de comando padrão do kernel. Se PXELINUX é inicializado automaticamente, atua como se as entradas após DEFAULT tivessem sido digitadas no prompt de inicialização, exceto a opção auto, que é adicionada automaticamente, indicando uma inicialização automática.
Se nenhum arquivo de configuração ou nenhuma entrada DEFAULT estiver presente no arquivo de configuração, o padrão será o nome de kernel “linux” sem opções.
APPEND opções...
Adicione uma ou mais opções à linha de comando do kernel. São adicionadas para inicializações manuais e automáticas. As opções são adicionadas no início da linha de comando do kernel, normalmente permitindo que as opções de kernel digitadas explicitamente as substituam.
LABEL rótulo KERNEL imagem APPEND opções...
Indica que se rótulo for digitado como kernel de inicialização, PXELINUX deve, por sua vez, inicializar imagem, e as opções APPEND especificadas devem ser usadas em vez das que estão especificadas na seção global do arquivo (antes do primeiro comando LABEL). O padrão para imagem é o mesmo de rótulo e, se não for fornecido nenhum APPEND, o padrão será usar a entrada global (se houver). Até 128 entradas LABEL são permitidas.
Observe que GRUB usa a seguinte sintaxe:
title meutítulo kernelmeu_kernelopções_kernelinitrdmeuinitrd
enquanto que PXELINUX usa a seguinte sintaxe:
labelmeurótulokernelmeukernelappendminhasopções
Os rótulos são desmembrados como se fossem nomes de arquivo e devem ser exclusivos após o desmembramento. Por exemplo, não seria possível distinguir os dois rótulos “v2.1.30” e “v2.1.31” em PXELINUX, pois ambos são desmembrados em um mesmo nome de arquivo do DOS.
O kernel não tem precisa ser um kernel do Linux; pode ser um setor de inicialização ou um arquivo COMBOOT.
Não anexa nada. APPEND com um único hífen como argumento em uma seção LABEL pode ser usado para anular um APPEND global.
LOCALBOOT tipo
Em PXELINUX, especificar LOCALBOOT 0 em vez de uma opção KERNEL significa chamar este rótulo específico e causa uma inicialização de disco local em vez de uma inicialização de kernel.
Todos os outros valores são indefinidos. Se você não sabe quais são as pilhas UNDI ou PXE, especifique 0.
TIMEOUT tempo_de_espera
Indica quanto tempo esperar no prompt de inicialização até inicializar automaticamente, em unidades de 1/10 de segundo. O tempo de espera é cancelado tão logo o usuário digite algo no teclado, partindo do princípio de que o usuário conclui o comando iniciado. O tempo de espera zero desabilita completamente o tempo de espera (que é também o padrão).
O valor do tempo de espera máximo possível é 35996 (pouco menos de uma hora).
PROMPT val_flag
Se val_flag for 0, só exibirá o prompt de inicialização se Shift ou Alt estiver pressionado ou Caps Lock ou Scroll Lock estiver definido (que é o padrão). Se val_flag for 1, exibirá sempre o prompt de inicialização.
F2nome_do_arquivoF1nome_do_arquivo..etc... F9nome_do_arquivoF10nome_do_arquivo
Exibe o arquivo indicado na tela quando uma tecla de função é pressionada no prompt de inicialização. Isso pode ser usado para implementar a ajuda online de pré-inicialização (supostamente para as opções de linha do comando do kernel). Para compatibilidade com versões anteriores, F10 também pode ser digitado como F0. Observe que atualmente não há meio de vincular nomes de arquivo a F11 e F12.
Prepare o BIOS do sistema para a inicialização PXE incluindo a opção PXE na ordem de inicialização do BIOS.
![]() | Atenção |
|---|---|
Não coloque a opção PXE na frente da opção de inicialização do disco rígido no BIOS. Caso contrário, este sistema tentará reinstalar-se toda vez que você o inicializar. | |
Wake on LAN (WOL) requer que a opção de BIOS adequada seja habilitada antes da instalação. Além disso, anote o endereço MAC do sistema de destino. Esses dados são necessários para iniciar o Wake on LAN.
Wake on LAN permite que a máquina seja ligada por um pacote de rede especial que contém o endereço MAC da máquina. Como toda máquina no mundo tem um identificador MAC exclusivo, você não precisa se preocupar em ligar acidentalmente a máquina errada.
![]() | Importante |
|---|---|
Se a máquina controladora não estiver localizada no mesmo segmento de rede que o destino de instalação que deve ser desperto, configure as solicitações WOL para serem enviadas como multicasts ou controle remotamente uma máquina naquele segmento de rede para atuar como remetente das solicitações. | |