Skip to content

Instantly share code, notes, and snippets.

@victor-oliveira1
Last active November 12, 2021 16:39
Show Gist options
  • Save victor-oliveira1/5554adcc437984dfbe562afcbcc19a5f to your computer and use it in GitHub Desktop.
Save victor-oliveira1/5554adcc437984dfbe562afcbcc19a5f to your computer and use it in GitHub Desktop.
Criando um ambiente para boot via PXE (Debian)

Descrição

Configure um ambiente para incializar sistemas usando uma interface de rede em computadores BIOS ou UEFI

Preparando o ambiente

  1. Usando o gerenciador de pacotes do sistema (apt-get, dnf, etc), instale os pacotes abaixo:
    • dnsmasq
    • pxelinux
    • 7zip
  2. Adicione as linhas abaixo ao arquivo /etc/dnsmasq.d/pxe.conf:
    port=0
    interface="NOME_DA_INTERFACE"
    dhcp-range=10.0.0.50,10.0.0.200,6h
    dhcp-vendorclass=BIOS,PXEClient:Arch:00000
    dhcp-vendorclass=UEFI,PXEClient:Arch:00007
    dhcp-boot=net:UEFI,EFI/BOOT/grubx64.efi
    dhcp-boot=net:BIOS,pxelinux/pxelinux.0
    enable-tftp
    tftp-root=/var/lib/tftpboot/pxelinux/
  3. Crie o diretório de imagens usando o comando abaixo: # mkdir -p /var/lib/tftpboot/pxelinux/pxelinux.cfg/
  4. Copie o arquivo pxelinux.0 do pacote pxelinux instalado no passo 1 para o diretório /var/lib/tftpboot/pxelinux/
  5. Configure a interface a ser usada com o comando abaixo:
    • # ip a add 10.0.0.1/24 dev "NOME_DA_INTERFACE"

Preparando a imagem (Exemplo usado abaixo: Fedora 35 Workstation)

  1. Faça o download da imagem desejada e copie para o diretório /var/lib/tftpboot
  2. Extraia o conteúdo da imagem para o diretório /var/lib/tftpboot/ com o comando abaixo: 7zz x -o/var/lib/tftpboot/ "IMAGEM.ISO"
  3. Renomeie o arquivo isolinux.cfg do diretório isolinux da imagem extraída para /var/lib/tftpboot/pxelinux/pxelinux.cfg/default
  4. Renomeie o diretório isolinux da imagem extraída para /var/lib/tftpboot/pxelinux
  5. Edite os arquivos /var/lib/tftpboot/pxelinux/pxelinux.cfg/default e /var/lib/tftpboot/EFI/BOOT/grub.cfg substituindo os textos root=live:CDLABEL=Fedora-KDE-Live-35-1-2 por root=live:tftp://10.0.0.1/LiveOS/squashfs.img
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment